كيفية إنشاء صفحات تلقائيا عند تنصيب قالب ووردبريس

إنشاء صفحات تلقائيا عند تنصيب القالب

لابد أنك لاحظت عند تثبيت بعض القوالب، أنها تقوم بإنشاء صفحات خاصة تلقائيا بحيث تكون في غالب الأحيان تحتوي على أكواد قصيرة shortcodes لاستدعاء دوال معينة، نصوص، أو تكون مسندة لقالب صفحة مخصص.

هذه الصفحات يتم انشاءها لعمل شيء محدد، مثل عرض منتوجات، إدراج ملفات الأعضاء الشخصية، حقول التسجيل في الموقع وغير ذلك من الصفحات التي تلبي احتياجات ومتطلبات الموقع. مثل هذه الأشياء هي التي تجعل من ووردبريس الخيار الأول للمطورين.

إضافة دعم القالب لهذه الخاصية بسيطة وسهلة الإعداد، كما أنها لا تتطلب معرفة واسعة في لغات البرمجة. لفعل ذلك فقط قم بنسخ هذه الدالة في ملف functions.php الخاص بالقالب المفعَّل.

اقرأ أيضا: طريقة تعطيل WP Rest API

/**
 * Create a new page after active the theme.
 *
 * @return void
 */
function sb_create_new_page_after_install_the_theme() {

	$new_page_title   = 'New page title';
	$new_page_content = 'Lorem ipsum dolor sit amet consectetur, adipisicing elit. Tempora eius minima dignissimos, quae sunt vero amet laudantium ratione veritatis voluptatibus animi atque distinctio omnis explicabo nemo qui itaque libero eveniet?';

	$user_id = get_current_user_id();

	// You can set a cutom post template if exist en your theme, ex: page-portfolio.php.
	$new_page_template = '';

	// Get post id by title.
	$page_check = get_page_by_title( $new_page_title );

	$new_page = array(
		'post_type'    => 'page',
		'post_title'   => $new_page_title,
		'post_content' => $new_page_content,
		'post_status'  => 'publish',
		'post_author'  => $user_id,
	);

	// check if page exist.
	if ( ! isset( $page_check->ID ) ) {
		// Instert page.
		$new_page_id = wp_insert_post( $new_page );

		// Set page template if not empty.
		if ( ! empty( $new_page_template ) ) {
			update_post_meta( $new_page_id, '_wp_page_template', $new_page_template );
		}
	}
}
add_action( 'after_switch_theme', 'sb_create_new_page_after_install_the_theme' );

أظن أن الكود سهل ولا يحتاج لشرح، فقط عليك تعيين عنوان الصفحة في المتغير $new_page_title, ومحتواها في المتغير $new_page_content, وإذا كنت تريد استعمال قالب صفحة مخصص فقط عليك وضع اسمه في المتغير $new_page_template … هكذا مثلا:

$new_page_template = 'page-portfolio.php';

شيء آخر أريد الإشارة إليه هو أنك إذا كنت قد أنشأت نوع مقالات مخصص وتريد أن يتم النشر فيه تلقائيا عند تفعيل القالب، فقط عليك تغيير page باسم نوع المقالات المخصص في مصفوفة المتغير $new_page. هكذا مثلا:

$new_page = array(
	'post_type'    => 'page',
	'post_title'   => $new_page_title,
	'post_content' => $new_page_content,
	'post_status'  => 'publish',
	'post_author'  => $user_id,
);

أتمنا أن تكون قد استفدت من الموضوع، إلى اللقاء في الموضوع القادم بإذن الله.

اقرأ أيضا: طريقة منع المشتركين من الدخول إلى لوحة التحكم

close

قم بالتسجيل على قائمتي البريدية لكي تكون من الأوائل في الحصول على تدوينات وشروحات حصرية

أنا لا أرسل أبدا البريد المزعج! اقرأ سياسة الخصوصية لمزيد من المعلومات.

اترك تعليقًا

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *