I WordPress, hvis du har brukt mange plugins, vil du sikkert komme over noen som krever at du legger en kortkode i posten, som [shortcode_1], for at den skal fungere. Bruk av kortnummer kan være en god måte å legge til funksjonalitet på nettstedet ditt, men når du deaktiverer pluginet, blir kortnummeret i innholdet ditt ikke fjernet, og det vises i frontenden i ubearbeidet form.

Slik ser det ut i sin ubehandlede form:

Det er flere måter å fjerne ubrukt kortnummer fra nettstedet ditt:

1. Fjern kortnummeret fra databasen

Hvis du vet hvilken bestemt kortkode du vil fjerne, og du vil fjerne den permanent fra databasen, kan du bare gjøre en SQL-spørring med kommandoen nedenfor:

 OPPDATERING wp_post SET post_content = REPLACE (post_content, '[shortcodename]', ''); 

Erstatt "shortcodename" med kortnummeret du vil fjerne.

Merk : Dette er ikke en idiotsikker metode fordi forskjellige kortkoder kan komme med forskjellige attributter og verdier, noe som gjør det vanskelig å danne en catch-all SQL-spørring.

2. Bytt kortnummeret med tom verdi

Hvis du vet hvilken kortkode du vil fjerne, men du ikke ønsker å fjerne den permanent, kan du få den til å gjengi en tom verdi i stedet. Lim inn følgende kode på slutten av functions.php filen (før ?> -taggen) i temamappen din.

 add_shortcode ('shorcodename', 'mte_return_empty_shortcode'); funksjon mte_return_empty_shortcode () {return ''; } 

Erstatt "kodenavnet" med kortnummeret du vil fjerne.

Merk : Dette er en god metode bare hvis du vet hvilken kortkode du skal fjerne. Du må også sørge for at kortnummeret ikke lenger er aktivt, ellers kan det føre til konflikt.

3. Fjern alle ubrukte snarveier fra innhold (anbefalt)

Hvis du har en mengde kortkoder som du ikke lenger brukte, og du ikke kan huske alt kortnummernavnet, er dette en ultimate måte å deaktivere all ubrukt kortnummer i innholdet ditt.

Lim inn koden til slutten av dine functions.php like før ?> -taggen.

 add_filter ('the_content', 'mte_remove_unused_shortcode'); funksjon mte_remove_unused_shortcode ($ content) {$ pattern = mte_get_unused_shortcode_regex (); $ content = preg_replace_callback ('/'. $ mønster. '/ s', 'strip_shortcode_tag', $ innhold); returnere $ content; } funksjon mte_get_unused_shortcode_regex () {global $ shortcode_tags; $ tagnames = array_keys ($ shortcode_tags); $ tagregexp = join ('|', array_map ('preg_quote', $ tagnames)); $ regex = '\\ [(\\ [?)'; $ regex. = "(?! $ tagregexp)"; $ regex. = '\\ b ([^ \\] \\ /] * (?: \\ / (?! \\]) [^ \\] \\ /] *) *) ? \\ /) \\] | \\] (: ([? ^ \\ [] * + (: \\ [(\\ / \\ 2 \\]) [^ \\ [] * + ) * +) \\ [\\ / \\ \\ 2])) (\\])? '; returnere $ regex; } 

Hva den ovennevnte koden gjør er å først hente listen over alle aktive kortkoder, søk innholdet for snarveier som ikke samsvarer med den aktive kortnummerlisten, og fjern snarveiene. Den er endret fra get_shortcode_regex-funksjonen som ser etter aktiv kortkode.

Merk : Denne metoden skal fungere for alle ubrukte snarveier, og den fjerner ikke kortnummer permanent. Neste gang du aktiverer pluginet, vil den respektive kortnummeret fortsette å fungere automatisk. På forsiden vil denne koden fjerne alt innhold som er sitert mellom en "[" og "]" -taggen.