saeedagha

کوئری از مطالب وردپرس براساس slug

5 پست در این موضوع قرار دارد

با سلام

میشه همچین کوئری از پست های وردپرس گرفت که مثلا بر اساس اولین حرف slug پست بیاد مطالب رو نشون بده

یک چیزی شبیه به کاری که این سایت انجام داده یعنی فیلتر پست ها بر اساس حروف الفبای انگلیسی http://www.filmtory36.com/movie/

0

به اشتراک گذاری این پست


لینک به پست

کوئری رو بر اساس حرف اول نامک نمی شه گرفت ولی می تونیسد به مطالبتون یک زمینه دلخواه اضافه کنید و حرف اول نامکش رو درش قرار بدید و برای زمینه ای که ساختید کوئری بگیرید و بر اساس نام سورتش کنید

1

به اشتراک گذاری این پست


لینک به پست

ارسال شده در (ویرایش شده)

قبلا یک زمینه اضافه شده بود که یک نام انگلیسی رو وارد میکردیم ( نام زمینه book )یعنی یک واژه

حالا چطوری میتونیم براساس حرف اول مطالب رو بکشم بیرون مثلا همه اون پستایی که اولین مقدار زمینه book واژه f هست و به همین ترتیب برای حروف دیگه

ممنون

ویرایش شده در توسط saeedagha
0

به اشتراک گذاری این پست


لینک به پست

بر اساس اولین مقدار نمی شه بر اساس کل مقدار می شه شما باید یک زمینه دلخواه برای حروف الفبا بسازید و اولین حرف نام هر مطلب رو مقدارش قرار بدید

ولی می تونید از همه مطالب کوئری بگیرید و بر اساس حروف الفبا نمایششون بدید

این افزونه کاری رو که عرض شد انجام می ده

https://wordpress.org/plugins/multi-column-tag-map/

1

به اشتراک گذاری این پست


لینک به پست

در تکمیل صحبتهای استاد فخار عزیز

شما میتونین از یک هوک هم استفاده کنید

کد زیر رو در فایل functions.php قرار بدید

<?php
add_filter( 'posts_where', 'title_like_posts_where', 10, 2 );
function title_like_posts_where( $where, &$wp_query ) {
global $wpdb;
if ( $post_title_like = $wp_query->get( 'post_title_like' ) ) {
$where .= ' AND ' . $wpdb->posts . '.post_title LIKE \'' . esc_sql( $wpdb->esc_like( $post_title_like ) ) . '%\'';
}
return $where;
}
?>

و به صورت زیر استفاده کنید

$args = array(
'post_title_like' => $str
);
$res = WP_Query($arg);

این کوئری پستهایی که با مقدار $str شروع میشن رو میاره

یا اگه برای اون زمینه دلخواه در نظر گرفتین به صورت زیر عمل کنید

$args = array(
'post_status' => 'publish',
'posts_per_page' => -1,
'meta_query' => array(
array(
'key' => 'practice_area',
'value' => $post->title,
'compare' => 'LIKE',
)
)
);

$query = new WP_Query( $args );

1

به اشتراک گذاری این پست


لینک به پست

برای ارسال نظر یک حساب کاربری ایجاد کنید یا وارد حساب خود شوید

برای اینکه بتوانید نظر ارسال کنید نیاز دارید که کاربر سایت شوید

ایجاد یک حساب کاربری

برای حساب کاربری جدید در انجمن ما ثبت نام کنید. عضویت خیلی ساده است !


ثبت نام یک حساب کاربری جدید

ورود به حساب کاربری

دارای حساب کاربری هستید؟ از اینجا وارد شوید


ورود به حساب کاربری