Mostrando resultados del 1 al 3 de 3

Tema: Condicionar el uso de plugins en WP

  1. #1
    Disel19 está desconectado Baneado
    Registro
    04-junio-2010
    Ubicación
    Colombia
    Edad
    23
    Mensajes
    63
    CMS
    CMS Utilizado
    Ir a Disel19 página de inicio Mi Twitter
    Algo que resulta bastante útil a la hora de crear themes para WordPress es condicionar el uso ó funciones de los plugins, a que me refiero con esto, es muy simple... cuando creamos un theme muchas veces es posible que "requiera" de algún plugin para su funcionamiento ó para mil cosas ya que como muchos sabemos hay infinidad de posibilidades para extender su wordpress usándolos.

    Ahora bien, lo que sucede a menudo es que ponemos el código del plugin como nos indica el autor ó como viene en el "readme", pero no todos los usuarios ó personas que descarguen el theme tendrán exactamente ese plugin instalado, que es para lo que utilizaremos una condicional en estos casos.


    La sintaxis es muy sencilla funciona de la siguiente manera.

    Código PHP:
    <?php
    * * if(function_exists('nombre_de_la_funcion'))
    * * * * 
    nombre_de_la_funcion();
    ?>
    Esto es que cuando descargamos un plugin en la mayoría de los casos nos pide que insertemos un código en nuestro theme que vendría siendo algo como: nombre_de_la_funcion();, justamente eso es lo que utilizaremos para nuestra condicional, hagamos un ejemplo con algo que usamos muy comunmente que son los ads.

    Para este ejemplo utilizaremos MightyAdsense, según vemos en la documentación para poder mostrar un bloque de adsense utilizando este plugin es necesaria la siguiente sintaxis.

    Código PHP:
    <?php mightyadsense4template(Set_Number); ?>
    Pero que sucede si no todos utilizan ese plugin ó si en dado caso por alguna razón tienen que desactivarlo, al hacer esto wordpress les motraría un error de que la función no existe si mal no recuerdo. Para eso utilizamos lo siguiente:

    Código PHP:
    <?php
        
    if(function_exists('mightyadsense4template'))
            
    mightyadsense4template(Set_Number);
    ?>
    Cabe aclarar que lo que dice "Set_Number" son parámetros que requiere el plugin en este caso.

    También pueden utilizar esta otra forma por si desean asignarle ó ponerle algo en especial a su código.

    Código PHP:
    <?php if ((function_exists('mightyadsense4template'))) { ?>
        <div id="myAdsBlock">
            <?php mightyadsense4template(Set_Number); ?>
        </div>
    <?php ?>
    Hasta aquí todo bien, ahora que pasa si queremos que cuando el plugin no esté activado ó no exista nos muestre otra cosa, simplemente hay que agregarle un "else" a nuestra condicional.

    Hagamos un ejemplo práctico para todos los que crean themes de WordPress y aún no apliquen esta técnica, para eso utilizaremos ahora el plugin para la paginación tipo Digg. Donde Nikko nos explica como usarlo. A lo que me gustaría complementarlo.

    Veamos, si utilizamos la sintaxis que nos dá el plugin queda de esta forma:

    Código PHP:
    <?php
        
    if(function_exists('pagination'))
            
    pagination(2,array("Anterior","Siguiente"));
    ?>
    Pero para que esto quede bien, tendríamos que eliminar el código que nos dá por default WordPress para su paginación, me refiero a:

    Código PHP:
    <div class="navigation">
        <div class="alignleft">
          <?php next_posts_link('Anterior'?>
        </div>
        <div class="alignright">
          <?php previous_posts_link('Siguiente'?>
        </div>
      </div>
    Para resolver esto, teóricamente haremos lo siguiente.
    Si la función de pagination existe, muéstra la paginación... pero sino existe, muestra la paginación por default. y nos queda de esta forma:

    Código PHP:
    <?php if (function_exists('pagination')) : //condicional si la funcion existe?>
        <?php pagination(2,array("Anterior","Siguiente")); ?>
    <?php 
    else : // sino existe muestra esto ?>
        <div class="navigation">
            <div class="alignleft">
                <?php next_posts_link('&laquo; P&aacute;gina anterior'?>
            </div>
            <div class="alignright">
                <?php previous_posts_link('Siguiente P&aacute;gina &raquo;'?>
            </div>
        </div>
    <?php endif; //termina la condicional ?>
    El resultado que obtendríamos utilizando esto es que si el usuario tiene instalado el plugin paginación tipo Digg se mostrará esta paginación, pero en dado caso de que no lo tenga ó lo desactive por alguna razón se mostrará la paginación predeterminada que trae WordPress.

    Sin duda es algo muy sencillo pero que a la hora de implementarlo en sus themes así sea que no tengan ningúno de los plugins instalados su theme funcionará ^^ y no marcará errores.

  2. #2
    Avatar de FabricioV
    FabricioV está desconectado Usuario Lambda
    Registro
    29-diciembre-2009
    Ubicación
    Buenos Aires
    Mensajes
    4.599
    CMS
    CMS Utilizado
    Ir a FabricioV página de inicio Mi Twitter
    Todo muy lindo, pero si pones la fuente mucho mejor! Saludos.
    El sabio puede sentarse en un hormiguero, pero sólo el necio se queda sentado en él.

  3. #3
    Avatar de Plaga
    Plaga esta en línea ahora Usuario Ni
    Registro
    15-abril-2009
    Ubicación
    Planeta Tierra
    Edad
    23
    Mensajes
    5.986
    CMS
    CMS Utilizado
    Mi Twitter Mi Facebook Mi Google+
    Deberias poner la fuente de tus post Condicionar el uso de plugins en WP
    Aquí no hay sentimientos, se trata de dinero y negocios!

Información del tema

Users Browsing this Thread

Actualmente hay 1 usuarios leyendo este tema. (0 miembros y 1 invitados)

Temas Similares

  1. Plugins que no pueden faltar...
    Por snisnik en el foro Plugins WP
    Respuestas: 11
    Último mensaje: 16-may-2010, 00:14
  2. Cuales son los mejores plugins?
    Por cr9crack en el foro Plugins WP
    Respuestas: 5
    Último mensaje: 07-abr-2010, 21:01
  3. Seo plugins
    Por Wigao en el foro Plugins WP
    Respuestas: 3
    Último mensaje: 30-nov-2009, 16:15
  4. ¿Que plugins me recomiendan?
    Por Aldo en el foro Plugins WP
    Respuestas: 6
    Último mensaje: 06-nov-2009, 19:32
  5. 12 plugins imprescindibles en Wordpress
    Por Nebel en el foro Plugins WP
    Respuestas: 11
    Último mensaje: 25-jun-2009, 02:45

Normas de Publicación

  • No puedes crear nuevos temas
  • No puedes responder mensajes
  • No puedes subir archivos adjuntos
  • No puedes editar tus mensajes
  •