No quiero mostrar el código corto en la etiqueta pre

2

Tengo un tema y quiero mostrar a los visitantes cómo el formato de shortcode está en la etiqueta <pre> . Pero cuando agrego shortcode en <pre> , muestra lo que hace shortcode. Solo quiero mostrar el formato de código corto en texto plano. ¿Cómo hacer eso?

    
pregunta T Kien 04.12.2013 - 16:15

2 respuestas

4

A) Si desea mostrar la sintaxis de código abreviado , puede intentar escribirla con corchetes dobles en el editor:

<pre>[[shortcode foo="bar"]]</pre>

Entonces se mostrará como

<pre>[shortcode foo="bar"]</pre>

en tu interfaz y no activará la devolución de llamada de shortcode.

B) O si desea algún formato adicional, puede definir su propio bonito formato a través de un código corto:

function pretty_shortcode( $atts, $content ) 
{        
    $atts = shortcode_atts( 
                array( 'class => 'pretty_shortcode' ), 
                $atts, 
                'pretty_shortcode' 
            );

    // input
    $content           = wp_kses( $content, array() );
    $atts['class']     = esc_attr( $atts['class'] );

    // output                       
    return sprintf( '<pre class="%s">%s</pre>', $atts['class'], $content );             
}

add_shortcode( 'pretty_shortcode', 'pretty_shortcode' );   

Luego escribirías, por ejemplo, esto en tu editor:

[pretty_shortcode class="pretty"]
    [gallery ids="123,321" link="file"]
[/pretty_shortcode]

y la salida sería:

<pre class="pretty">
    [gallery ids="123,321" link="file"]
</pre>
    
respondido por el birgire 04.12.2013 - 17:21
0

Una solución más loca pero confiable. Puede pegar el espacio invisible char &#173; después del primer corchete. Utilizo ese enfoque para solucionar muchos problemas de representación al presentar el código. En javascipt el modelo de sintaxis es:

content = content.replace('[', '[' + String.fromCharCode('173'));

La parte difícil es agarrar el personaje en formato Unicode y pegarlo en el protocolo PHP. De lo contrario, &#173; se procesará o se convertirá en un guión - . El carácter es invisible para el cursor, por lo que no puede seleccionarlo solo. Sin embargo, solo prodúzcalo una vez con javascript y copie la parte [g y pegue / reemplace en el editor.

Puedes usar el mismo truco para usar siempre el elemento sin títulos, en wordpress, pegando un espacio invisible como título en imágenes individuales.

Aquí está el shortcode con el espacio. Pega en tu editor de wordpress y borra cada caracter. Después de g , el cursor se detiene, antes de continuar con la eliminación del corchete ...

[­gallery link="none"]

Tenga en cuenta que si ve - en su lugar, su codificación es incorrecta o la información se rompió en la copia de su dispositivo.

    
respondido por el Jonas Lundman 10.06.2018 - 04:18

Lea otras preguntas en las etiquetas