-
April 15th, 2019, 03:05
#11
عضو انجمن
پاسخ : جلوگیری از انتشار پست با عنوان های خاص
این رو امتحان کنید :
کد PHP:
function CheckTitle($postId)
{
$keywords = array("test1","test2","test3");
$title = get_post($postId)->post_title;
$check = true;
foreach ($keywords as $keyword)
{
if(!(strpos($title,$keyword) === false))
{
$check = false;
}
}
if(!$check)
{
remove_action('save_post', 'CheckTitle');
wp_update_post(array('ID' => $postId, 'post_status' => 'draft'));
add_action('save_post', 'CheckTitle');
}
}
add_action('save_post', 'CheckTitle')
- - - Updated - - -

نوشته اصلی توسط
T.Toosi
کد:
function myp($post_id) {
if(wp_is_post_revision($post_id)) return;
if(get_the_title($post_id) == "test") {
wp_update_post([
'ID' => $post_id,
'post_status' => 'pending'
]);
}
}
add_action('save_post', 'myp');
فقط یک موردی که هست اینه که اگر قبل از آپدیت کردن پست هوک رو ریموو نکنیم باعث لوپ میشه و صفحه در حال لودینگ میمونه
شازده کوچولو پرسید:از کجا بدانم وابسته شده ام؟!
روباه گفت:تا وقتی هست،نمی فهمی...
Telegram : Coala_71
-
تعداد تشکر ها از xwoman2 به دلیل پست مفید
-
April 15th, 2019 03:05
# ADS
-
April 15th, 2019, 10:44
#12
پاسخ : جلوگیری از انتشار پست با عنوان های خاص
نیاز به برنامه نویسی داره که میتونید به کمک وردپرس مراجعه کنید و از یک پشتیبانی حرفه ای لذت ببرید
-
-
April 16th, 2019, 13:36
#13
عضو انجمن
پاسخ : جلوگیری از انتشار پست با عنوان های خاص

نوشته اصلی توسط
xwoman2
این رو امتحان کنید :
کد PHP:
function CheckTitle($postId)
{
$keywords = array("test1","test2","test3");
$title = get_post($postId)->post_title;
$check = true;
foreach ($keywords as $keyword)
{
if(!(strpos($title,$keyword) === false))
{
$check = false;
}
}
if(!$check)
{
remove_action('save_post', 'CheckTitle');
wp_update_post(array('ID' => $postId, 'post_status' => 'draft'));
add_action('save_post', 'CheckTitle');
}
}
add_action('save_post', 'CheckTitle')
- - - Updated - - -
فقط یک موردی که هست اینه که اگر قبل از آپدیت کردن پست هوک رو ریموو نکنیم باعث لوپ میشه و صفحه در حال لودینگ میمونه
خیلی ممنون این اوکی شد و کار می کنه
فقط بعد از اضافه کردن این کد یه مشکلی ایجاد شده
پست ها دیگه حذف نمیشن
یعنی وقتی میزنم "انتقال به زباله دان" همون صفحه دوباره لود میشه و هیچ اتفاقی نمیفته !
پستایی که شامل این کلمات میشن ظاهرا قابل حذف نیستن
- - - Updated - - -

نوشته اصلی توسط
komakwpco
نیاز به برنامه نویسی داره که میتونید به کمک وردپرس مراجعه کنید و از یک پشتیبانی حرفه ای لذت ببرید
شما به نظر میاد بیشتر دنبال تبلیغات باشید تا کمک عزیز
-
-
April 16th, 2019, 15:31
#14
عضو انجمن
پاسخ : جلوگیری از انتشار پست با عنوان های خاص

نوشته اصلی توسط
mgt1234
خیلی ممنون این اوکی شد و کار می کنه
فقط بعد از اضافه کردن این کد یه مشکلی ایجاد شده
پست ها دیگه حذف نمیشن
یعنی وقتی میزنم "انتقال به زباله دان" همون صفحه دوباره لود میشه و هیچ اتفاقی نمیفته !
پستایی که شامل این کلمات میشن ظاهرا قابل حذف نیستن
- - - Updated - - -
شما به نظر میاد بیشتر دنبال تبلیغات باشید تا کمک عزیز

کد PHP:
function CheckTitle($postId)
{
$keywords = array("test1","test2","test3");
$title = get_post($postId)->post_title;
$check = true;
foreach ($keywords as $keyword)
{
if(!(strpos($title,$keyword) === false))
{
$check = false;
}
}
if(!$check)
{
if(get_post($postId)->post_status == "publish")
{
remove_action('save_post', 'CheckTitle');
wp_update_post(array('ID' => $postId, 'post_status' => 'draft'));
add_action('save_post', 'CheckTitle');
}
}
}
add_action('save_post', 'CheckTitle');
درود
این رو تست کنید.
البته همونجا هم میتونستیدتایتل رو عوض کنید و بعد پاک کنید :D
شازده کوچولو پرسید:از کجا بدانم وابسته شده ام؟!
روباه گفت:تا وقتی هست،نمی فهمی...
Telegram : Coala_71
-
تعداد تشکر ها از xwoman2 به دلیل پست مفید
-
April 16th, 2019, 16:33
#15
عضو انجمن
پاسخ : جلوگیری از انتشار پست با عنوان های خاص

نوشته اصلی توسط
xwoman2
کد PHP:
function CheckTitle($postId)
{
$keywords = array("test1","test2","test3");
$title = get_post($postId)->post_title;
$check = true;
foreach ($keywords as $keyword)
{
if(!(strpos($title,$keyword) === false))
{
$check = false;
}
}
if(!$check)
{
if(get_post($postId)->post_status == "publish")
{
remove_action('save_post', 'CheckTitle');
wp_update_post(array('ID' => $postId, 'post_status' => 'draft'));
add_action('save_post', 'CheckTitle');
}
}
}
add_action('save_post', 'CheckTitle');
درود
این رو تست کنید.
البته همونجا هم میتونستیدتایتل رو عوض کنید و بعد پاک کنید :D
اوکی شد خیلی ممنون
-