كيفية إنشاء منشورات وصفحات برمجيًا في WordPress

نشرت: 2021-09-16

هل تبحث عن بديل لإضافة منشورات وصفحات لموقعك؟ لقد جئت إلى المكان المناسب. في هذا الدليل ، سنوضح لك كيفية إنشاء منشورات وصفحات برمجيًا في WordPress .

باعتباره أكبر نظام لإدارة المحتوى (CMS) في العالم ، يعد نشر المنشورات والصفحات إحدى ميزاته الرئيسية. في البداية ، تم إنشاء WordPress لمساعدة مالكي مواقع الويب على إنشاء مواقعهم وإدارتها. في الوقت الحاضر ، أصبح حلاً كاملاً لجميع أنواع المواقع.

بصرف النظر عن كونها شائعة بين المدونات والمتاجر عبر الإنترنت ، هناك العديد من الأنواع الأخرى من مواقع الويب التي تم إنشاؤها باستخدام WordPress ، من الكتالوجات إلى الدلائل إلى لوحات الوظائف أو مواقع الويكي أو المحافظ الشخصية أو المنتديات أو حتى شبكات التواصل الاجتماعي.

تنشر جميع مواقع الويب (باستثناء المواقع الثابتة) نوعًا من المحتوى بتردد معين. تعد المنشورات والصفحات أكثر أنواع المحتوى أساسية مقارنة بالأنواع الأخرى مثل المنتجات والتعليقات والمراجعات والمزيد.

قبل أن نرى لماذا وكيف ننشئ منشورات وصفحات برمجيًا ، دعنا نفهم الفروق بينها بشكل أفضل. سيساعدك هذا على اتباع الممارسات الجيدة وتجنب أي مشاكل محتملة.

الفرق بين المنشور والصفحات

1) المشاركات

في WordPress ، المنشورات هي الطريقة التي يقدم بها موقع الويب محتوى قيمًا ومحدثًا لمستخدميه. من المتوقع أن يقوم موقع ما بنشر المشاركات بشكل منتظم ، ولكنه يختلف كثيرًا حسب نوع الموقع. ستنشر مدونة الأخبار المحتوى في كثير من الأحيان أكثر من موقع الشركة ، لذلك يمكن أن يختلف عدد المنشورات على موقع الويب كثيرًا.

عادة ما يتم سرد المنشورات بترتيب زمني عكسي على مواقع الويب. هذا يعني أن آخر منشور تم نشره سيكون مرئيًا في أعلى القائمة. ولكن يمكنك أيضًا جعل المنشور ثابتًا وعرضه بشكل دائم في مكان ما على موقع الويب الخاص بك.

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

2) الصفحات

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

تعد الصفحات مثل "نبذة عنا" أو "من نحن" أو "جهة الاتصال" أو "التوثيق" في الأساس محتوى ثابتًا ، لذلك لا يتم تحديثها كثيرًا في الغالب.

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

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

لماذا إنشاء منشورات وصفحات برمجيًا؟

ربما تعرف كيفية إنشاء منشورات وصفحات من لوحة تحكم WordPress. عليك ببساطة الانتقال إلى المنشورات / الصفحات> إضافة جديد وإضافة اسم ومحتوى واختيار فئة وما إلى ذلك.

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

كيفية نشر منشورات وصفحات WordPress برمجيًا

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

ملاحظة : نظرًا لأننا سنقوم بتحرير بعض الملفات الأساسية ، قبل أن نبدأ ، نوصيك بعمل نسخة احتياطية من موقعك. علاوة على ذلك ، قم بإنشاء قالب فرعي إذا لم يكن لديك واحدًا حتى الآن أو استخدم أيًا من المكونات الإضافية للقوالب الفرعية.

كيفية نشر المشاركات

إليك النص الكامل الذي سينشر تلقائيًا منشورًا وشرح الكود أدناه. ضع في اعتبارك أنه يجب عليك لصق الكود في ملف functions.php لموضوع طفلك

 add_action ('admin_init'، 'QuadLayers_publish_post') ؛

الوظيفة QuadLayers_publish_post () {
 
    إذا (get_option ('post_is_published_01')! = 'نعم') {
		 $ postType = 'post'؛ 
		 معرف المستخدم $ = 1 ؛ 
		 $ categoryID = '1'؛ 
		 $ postStatus = 'نشر'؛  
		 $ leadTitle = 'تم نشر منشور' .date ("n / d / Y")؛
		 $ leadContent = '<h1> تم نشره برمجيًا </ h1> <p> تم نشر هذا المنشور برمجيًا وتم حفظ خيار التعريف كـ <b> post_is_published_01 </b>. PHP srcipt في ملف function.php للقالب الفرعي. </ p> '؛
		 $ leadContent. = '<! - more -> <p> غالية الثمن ، لكنها تستحق ذلك تمامًا. </ p>'؛
		 
		 # وقت البناء والتاريخ
		 $ timeStamp = $ minutesCounter = 0 ؛  
		 iCounter دولار = 1 ؛ 
		 $ minutesIncrement = 1 ؛ 
		 $ AdjustClockMinutes = 0 ؛ 
		 minutesCounter = $ iCounter * $ minutesIncrement دولار ؛ 
		 $ minutesCounter = $ minutesCounter + $ AdjustClockMinutes ؛ 
		 $ timeStamp = التاريخ ('Ymd H: i: s'، strtotime ("+ $ minutesCounter min")) ؛ 

	 	 # بناء آخر
		 $ new_post = مجموعة (
		 'post_title' => $ leadTitle ،
		 'post_content' => $ leadContent ،
		 'post_status' => $ postStatus ،
		 "post_date" => $ timeStamp ،
		 'post_author' => $ userID،
		 'post_type' => $ postType،
		 'post_category' => مجموعة ($ categoryID)
		 ) ؛	
		 # انشرها !
		 post_id $ = wp_insert_post ($ new_post) ؛

  update_option ('post_is_published_01'، 'نعم') ؛
    }
}

نظرًا لأنه لا يمكننا معرفة ما إذا كان المنشور موجودًا قبل نشره ، فنحن بحاجة إلى التسجيل في مكان ما يتم فيه نشر منشورنا. إذا لم نفعل ذلك ، فسيتم نشر منشورنا في كل مرة يتم فيها تحميل شاشة خلفية.

جدول خيارات قاعدة البيانات هو المكان الصحيح للقيام بذلك. نقوم بتخزين خيار يسمى post_is_published_01 بعد نشر المنشور ، باستخدام وظيفة update_option() . والتحقق مما إذا كان الخيار موجودًا مع get_option() . إذا كان هذا الخيار موجودًا في قاعدة البيانات ، فلن يفعل البرنامج النصي أي شيء.

لتشغيل البرنامج النصي مرة أخرى ، يمكنك ببساطة تغيير اسم الخيار إلى post_is_published_02 أو أي شيء تريده.

داخل الشرط if() ، يمكنك أن ترى كيف نحدد محتوى المنشور في الكتلة الأولى. ونحتاج إلى إعداد الوقت والتاريخ لمطابقة متطلبات WordPress.

أخيرًا ، الوظيفة المسؤولة عن نشر المنشور هي wp_insert_post() ، والتي ترفق جميع البيانات السابقة المعلنة في الوظيفة

نشر المنشور برمجيًا

كيف تنشر الصفحات

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

نظرًا لأن الصفحات لها وظيفة مختلفة عن المنشورات ووظائف WordPress للمنشورات والصفحات مختلفة ، يمكننا استخدام وظيفة get_page_by_title() للتحقق مما إذا كنا قد نشرنا صفحة بنفس العنوان من قبل. ثم نقوم بإدخال المعلومات الخاصة بالصفحة مثل المؤلف والعنوان والاسم وما إلى ذلك.

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

 add_action ('admin_init'، 'QuadLayers_publish_page') ؛

الوظيفة QuadLayers_publish_page () {
	$ check_page_exist = get_page_by_title ("الصفحة منشورة برمجيًا" ، "OBJECT" ، "الصفحة") ؛
	إذا (فارغ ($ check_page_exist)) {
		page_id دولار = wp_insert_post (
			مجموعة مصفوفة(
			'comment_status' => 'close'،
			"ping_status" => "إغلاق" ،
			'post_author' => 1 ،
			'post_title' => ucwords ('الصفحة منشورة برمجيًا') ،
			'post_name' => strtolower (str_replace ('' ، '-' ، تقليم ('الصفحة منشورة برمجيًا'))) ،
			'post_status' => 'نشر' ،
			'post_content' => '<p> هذا هو محتوى الصفحة ، وسم html مسموح به هنا </ p>'، 
                        'post_type' => 'page'، 'post_parent' => 'id_of_the_parent_page_if_it_available')) ؛ 
        } 
} 

نشر صفحة برمجيًا

استنتاج

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

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

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

هل حاولت إنشاء منشورات وصفحات بقليل من التعليمات البرمجية؟ هل عملت كما توقعت؟ واسمحوا لنا أن نعرف في قسم التعليقات أدناه!

إذا استمتعت بهذا المنشور ، فقد تكون مهتمًا أيضًا بما يلي:

  • كيفية إعادة توجيه صفحة WordPress
  • كيفية تحويل نوع المنشور في WordPress
  • دليل لإنشاء WordPress نوع منشور مخصص برمجيًا