Definir Función en functions.php o plugin y llamarla en el loop del tema

29 ago 2015, 15:16:06
Vistas: 23.6K
Votos: 4

Necesito definir una función en functions.php o un plugin y poder llamarla dentro y fuera del loop del tema.

Por ejemplo; tengo un $product_price = get_post_meta(get_the_ID(), 'product-price', true); definido dentro del loop de todas estas páginas;

dentro de home.php, index.php, archive.php, single.php, y otras páginas personalizadas...

así que cada vez que necesito cambiar algo tengo que ir a cada una de estas páginas y hacer el cambio... Ahora quiero crear una función donde en lugar de tener $product_price = get_post_meta(get_the_ID(), 'product-price', true); en cada página solo llame a product_price(); y eso es todo.

He intentado algo como esto (tanto en el plugin como en functions.php), pero no está funcionando

function product_title() {
    global $post;

    $args = array( "posts_per_page" => "-1" );
    $get_title = new WP_Query( $args );

    while ( $get_title->have_posts() ) : $get_title->the_post();

    return get_post_meta(get_the_ID(), 'product-price', true);

    wp_reset_postdata();

    endwhile;
}
0
Todas las respuestas a la pregunta 1
0

Prueba usar esto (functions.php):

function product_title($id) {
  $custom='CustomField'; // Tu campo personalizado aquí
  return get_post_meta($id, $custom, true);
}

y llama a la función en tu plantilla (dentro del loop, etc...):

<?php $p_title=product_title(get_the_ID()); ?>
<h3>Producto : <?php echo ($p_title); ?> </h3>
29 ago 2015 15:58:27