رفتن به مطلب

هماهنگی انسپرس با شورت کدهای قالب


پست های پیشنهاد شده

سلام

قالب من چند شورت کد داره مثل شورت کد قرار دادن آخرین پست‌ها. من می‌خوام با این شورت کد آخرین سوالات‌های ماژول انسپرس رو هم نمایش بدم؟ به نظرتون میشه این کار رو کرد:

تکسونومی انسپرس اینه: question

کدهای قسمت شورت کد قراردان پست‌ها هم اینه:


f ( ! function_exists( 'vw_shortcode_posts' ) ) {
function vw_shortcode_posts( $atts, $content = null ) {
global $vw_posts_shortcode_id;

$defaults = array(
'title' => '',// title
'cat' => '',// category ID
'cat_name' => '',// category name
'cat_exclude' => '', // category IDs, separated by comma (,)
'tag' => '', // tag slugs, separated by comma (,)
'layout' => 'medium-1-col-3',
'count' => '6',
'offset' => '0',
'order' => 'latest', // latest, random, popular, viewed, latest_reviews
'pagination' => 'hide',
);

extract( shortcode_atts( $defaults, $atts) );
global $post;
$query_args = array(
'post_type' => 'post',
'ignore_sticky_posts' => true,
'posts_per_page' => $count,
'paged' => vw_get_paged(),
'order' => 'DESC',
// 'meta_key' => '_thumbnail_id', // DEV: Only posts that have featured image
);
// Option: offset
if ( intval( $offset ) > 0 ) {
$query_args['offset'] = intval( $offset );
if ( vw_get_paged() > 1 ) {
// Wordpress is not support Offset on Pagination. This is a hack.
$query_args['offset'] += ( vw_get_paged() - 1 ) * $count;
}
}
// Option: cat_name
if ( ! empty( $cat_name ) ) {
$query_args['category_name'] = $cat_name;
if ( ! empty( $title ) ) {
$category = get_category_by_slug( $cat_name );
if ( ! empty( $category ) ) {
$title = '<span class="'.esc_attr( vw_get_the_category_class( $category->term_id ) ).'">'.$title.'</span>';
}
}
}
// Option: cat
if ( ! empty( $cat ) ) {
$query_args['cat'] = $cat;
if ( ! empty( $title ) ) {
$title = '<span class="'.esc_attr( vw_get_the_category_class( $cat ) ).'">'.$title.'</span>';
}
}
// Option: cat_exclude
if ( ! empty( $cat_exclude ) ) {
$query_args['category__not_in'] = explode( ',', $cat_exclude );
}
// Option: tag
if ( ! empty( $tag ) ) {
$query_args['tag'] = $tag;
}
// Option: order
if ( 'random' == $order ) {
$query_args['orderby'] = 'rand';

} elseif ( 'featured' == $order ) {
$query_args['meta_query'][] = array(
'key' => 'vw_post_featured',
'value' => '1',
'compare' => '=',
);

} elseif ( 'latest_gallery' == $order ) {
$query_args['tax_query'][] = array(
'taxonomy' => 'post_format',
'field' => 'slug',
'terms' => 'post-format-gallery',
);
} elseif ( 'latest_video' == $order ) {
$query_args['tax_query'][] = array(
'taxonomy' => 'post_format',
'field' => 'slug',
'terms' => 'post-format-video',
);
} elseif ( 'latest_audio' == $order ) {
$query_args['tax_query'][] = array(
'taxonomy' => 'post_format',
'field' => 'slug',
'terms' => 'post-format-audio',
);
} elseif ( 'latest_reviews' == $order ) {
$query_args['meta_query'][] = array(
'key' => 'vw_enable_review',
'value' => '1',
'compare' => '=',
);
} elseif ( 'most_viewed' == $order ) {
$query_args['orderby'] = 'meta_value_num';
$query_args['meta_key'] = 'vw_post_views_all';

} elseif ( 'most_review_score' == $order ) {
$query_args['orderby'] = 'meta_value_num';
$query_args['meta_key'] = 'vw_review_average_score';
} else { // 'latest' == $order
$query_args['orderby'] = 'post_date';
}
query_posts( $query_args );
$template_file = sprintf( 'templates/post-loop/loop-%s.php', $layout );
ob_start();
?>
<div id="vw_post_shortcode_id_<?php echo esc_attr( ++$vw_posts_shortcode_id ); ?>" class="vw-post-shortcode">
<?php if ( ! empty ( $title ) ) : ?>
<h2 class="vw-post-shortcode-title"><?php echo $title; ?></h2>
<?php endif; ?>
<?php include( locate_template( $template_file, false, false ) ); ?>
<?php if ( 'show' == $pagination ) vw_the_pagination(); ?>
</div>
<?php
wp_reset_query();
return ob_get_clean();
}
}

لینک به ارسال

انسپرس در اصل یک کاستوم تکسونومی درست میکنه.

من قالب خودش یک سری شورت کد داره که فقط از دسته‌های اصلی وردپرس پشتیبانی میکنه و کاستوم تکسونومی‌ها.

من می‌خوام بدونم چطور کد شورت کدها رو تغییر بدم که بتونه کاستوم تکسونومی‌ها رو هم پشتیبانی کنه.

برای مثال قالبم یه شورت کد داره که ۵ تا متن آخر دسته‌ای که نامک ایکسه رو بیار. من می‌خوام علاوم بر نامک دسته‌های اصلی از نامک کاستوم تکسونومی‌ها هم پشتیبانی کنه.

امیدوارم تونسته باشم منظورم رو برسونم

لینک به ارسال

به گفتگو بپیوندید

هم اکنون می توانید مطلب خود را ارسال نمایید و بعداً ثبت نام کنید. اگر حساب کاربری دارید، برای ارسال با حساب کاربری خود اکنون وارد شوید .

مهمان
ارسال پاسخ به این موضوع ...

×   شما در حال چسباندن محتوایی با قالب بندی هستید.   حذف قالب بندی

  تنها استفاده از 75 اموجی مجاز می باشد.

×   لینک شما به صورت اتوماتیک جای گذاری شد.   نمایش به صورت لینک

×   محتوای قبلی شما بازگردانی شد.   پاک کردن محتوای ویرایشگر

×   شما مستقیما نمی توانید تصویر خود را قرار دهید. یا آن را اینجا بارگذاری کنید یا از یک URL قرار دهید.

×
×
  • اضافه کردن...