Como ya sabéis me encanta usar Pods Framework para WordPress, pero siempre gasto demasiado tiempo volviendo a buscar como hacer las queries, mostrar ciertos campos, … Por este motivo, voy a intentar crearme una guía con las porciones de código que más uso en mis proyectos, y así poder usarla como guía de consulta en el futuro. Con un poco de suerte, quizás también sea útil para ti.
Tipos de Pods
Yo suelo usar dos: Custom Post Type (ampliar los post habituales de Worpdress) o los Advanced Content Type (tablas nuevas que no extienden de ningún elemento de WordPress)
Según usemos uno cambiará ligeramente las queries de busqueda:
Custom Post Type
$params = array(
'where' => 't.post_status="Publish"',
'orderby' => 'position.meta_value+0 ASC',
'limit' => -1 // -1 = no limit in items per page
);
$mypod = pods( 'podsTypeName', $params );
$params = array(
// show it if wordpress status is publish & it belongs to current type
'where' => 't.post_status="Publish" AND podTypeName.field_id="'.$typeId.'"'
);
Advanced Content Type
$params = array(
'where' => 'active=1',
'orderby' => 'position+0 ASC',
'limit' => -1 // -1 = no limit in items per page
);
$mypod = pods( 'podsTypeName', $params );
Loop
while ( $mypod->fetch() ) {
echo $mypod->data->row['ID'];
echo $mypod->display('title');
echo wpautop($mypod->display('content'));
// Changes double line-breaks in the text into HTML paragraphs (<p>...</p>)
// multiselect field:
echo $mypod->get_field('categories');
$array = $mypod->field('categories.category_id');
foreach ($array as &$item) {
echo $item;
}
// Image
$portfolio_image = $portfolio->get_field('image');
echo $portfolio_image[0]['guid'];
}
// Total records in the loop
$openingData->total();
Single Records
$slug = pods_v( 'last', 'url' );
// antes se usaba: $slug = pods_url_variable('last');
$params = array( 'where' => 'post_name = "'.$slug.'"' );
$mypod = pods( 'podsTypeName', $params );
Poco a poco iré ampliando estas porciones de código.
Espero que os sea de ayuda
Campos de fecha
$datetime = explode(" ", $mypod->display( 'start_date' ));
$date = explode("-", $datetime [0]);
$time = explode(":", $datetime [1]);
echo date(get_option('date_format'), mktime($time[0], $time[1], 0, $date[1], $date[0], $date[2]));