Установить публикацию на страницу, используя get_post_metaPhp

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 Установить публикацию на страницу, используя get_post_meta

Сообщение Anonymous »

У меня есть код для отображения get_meta_post на каждой странице этого моего кода

Код: Выделить всё

if ( have_posts() ) :
while ( have_posts() ) : the_post();
$metas = get_post_meta(get_the_ID(),'value_gallery',false);
//var_dump($metas); ==> will output array(1) { [0]=> string(29) "1434,1402,1434,1435,1398,1434" }
foreach ($metas as $key ) {
$key_val =  explode(",", $key);
$page = get_query_var('page');
$page = $page > 1 ? $page - 1 : 0 ;
if (isset($key_val[$page])) {
echo "".
wp_get_attachment_image($key_val[$page],"cherry-thumb-a") ."";
}

}

endwhile;
else :
_e('Sorry, no posts matched your criteria.');
endif;
так что этот код покажет мое изображение, используя

Код: Выделить всё

wp_get_attachment_image($key_val[$page],"cherry-thumb-a")
и будет разбита на страницы со ссылкой

Код: Выделить всё

https://yourpage.com/post-name/2


но этот код показывает только 1 изображение на странице, моя проблема в том, как показать 4 изображения на странице и как изменить разбиение на страницы ссылок на

Код: Выделить всё

https://yourpage.com/post-name/page/2
Буду рад, если кто-нибудь сможет мне помочь

Обновить

спасибо за внимание, я пытался добавить array_chunk и добавить нумерацию страниц, но все равно не работает, мой полный код:

Код: Выделить всё

$paged = ( get_query_var( 'paged' ) ) ? absint( get_query_var( 'paged' ) ) : 1;
$args = array('posts_per_page' => 1, 'paged' => $paged );
$the_query = new WP_Query( $args );
if ( $the_query->have_posts() ) :
while ( $the_query->have_posts() ) : $the_query->the_post();
$metas = get_post_meta(get_the_ID(),'value_gallery',false);
foreach ($metas as $meta) {
$key_val = explode(",", $meta);
$image_chunk = array_chunk($key_val, 4);

$page = get_query_var('page');
$page = $page > 1 ? $page - 1 : 0 ;
if (isset($key_val[$page])) {
foreach ($image_chunk[$page] as $image) {
echo "".
wp_get_attachment_image($image,"cherry-thumb-a") ."";
}
}
}
endwhile;
$big = 999999999;
echo paginate_links( array(
'base' => str_replace( $big, '%#%', esc_url( get_pagenum_link( $big ) ) ),
'format' => '?paged=%#%',
'current' => max( 1, get_query_var('paged') ),
'total' => $the_query->max_num_pages
) );
endif;
большое спасибо за внимание

Подробнее здесь: https://stackoverflow.com/questions/526 ... -post-meta
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»