โอ้การผัดวันประกันพรุ่งในวันอาทิตย์ ...
https://github.com/maugly/Network-Terminator
- แจ้งให้เพิ่มข้อกำหนดจำนวนมากข้ามเครือข่าย
- คุณสามารถเลือกไซต์ที่จะได้รับผลกระทบ
- ทำงานร่วมกับ taxonomies ที่กำหนดเอง
- ไม่ลบ
- ไม่ซิงค์
นี่คือสิ่งที่ฉันทำในไม่กี่ชั่วโมงที่ผ่านมาและฉันไม่มีเวลาสำหรับการทดสอบเพิ่มเติมในขณะนี้ อย่างไรก็ตาม - มันใช้งานได้สำหรับฉัน! .)
ให้มันลอง. นอกจากนี้ยังมีคุณสมบัติ "ทดสอบการทำงาน" ที่ใช้งานเพื่อให้คุณสามารถตรวจสอบผลลัพธ์ก่อนที่จะทำอะไรบางอย่าง
อัปเดต -> ภาพหน้าจอ:
ก่อนดำเนินการ:
หลังจากทดสอบการทำงาน:
ปลั๊กอินที่ลิงก์ด้านบนเพิ่มส่วนต่อประสานกับผู้ใช้ แต่ทุกสิ่งที่สำคัญเกิดขึ้นในฟังก์ชั่นนี้:
<?php function mau_add_network_terms($terms_to_add, $siteids, $testrun = false) {
// check if this is multisite install
if ( !is_multisite() )
return 'This is not a multisite WordPress installation.';
// very basic input check
if ( empty($terms_to_add) || empty($siteids) || !is_array($terms_to_add) || !is_array($siteids) )
return 'Nah, I eat only arrays!';
if ($testrun) $log = '<p><em>No need to get excited. This is just a test run.</em></p>';
else $log = '';
// loop thru blogs
foreach ($siteids as $blog_id) :
switch_to_blog( absint($blog_id) );
$log .= '<h4>'.get_blog_details( $blog_id )->blogname.':</h4>';
$log .= '<ul id="ntlog">';
// loop thru taxonomies
foreach ( $terms_to_add as $taxonomy => $terms ) {
// check if taxonomy exists
if ( taxonomy_exists($taxonomy) ) {
// get taxonomy name
$tax_name = get_taxonomy($taxonomy);
$tax_name = $tax_name->labels->name;
//loop thru terms
foreach ( $terms as $term ) {
// check if term exists
if ( term_exists($term, $taxonomy) ) {
$log .= "<li class='notice' ><em>$term already exists in the $tax_name taxonomy - not added!</em></li>";
} else {
// if it doesn't exist insert the $term to $taxonomy
$term = strip_tags($term);
$taxonomy = strip_tags($taxonomy);
if (!$testrun)
wp_insert_term( $term, $taxonomy );
$log .= "<li><b>$term</b> successfully added to the <b>$tax_name</b> taxonomy</li>";
}
}
} else {
// tell our log that taxonomy doesn't exists
$log .= "<li class='notice'><em>The $tax_name taxonomy doesn't exist! Skipping...</em></li>";
}
}
$log .= '</ul>';
// we're done here
restore_current_blog();
endforeach;
if ($testrun) $log .= '<p><em>No need to get excited. This was just the test run.</em></p>';
return $log;
} ?>
ฉันจะกลับมาและแก้ไขด้วยข้อมูลเพิ่มเติมในภายหลัง (ถ้าจำเป็น)
มันไกลจากความสมบูรณ์แบบ (อ่านปัญหาที่ทราบในหัวปลั๊กอิน)
ข้อเสนอแนะใด ๆ ชื่นชม!