it-swarm.asia

سيناريو التهيئة لجوانب "قياسية" لموقع ووردبريس؟

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

  • أنا أتساءل عما إذا كان أي شخص آخر قد فعل هذا بالفعل وإذا كان الأمر كذلك إذا كان يمكنهم مشاركة الكود الخاص بهم؟

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

فيما يلي قائمة المهام الأساسية أعتقد أننا سنحتاج إلى (هذه تفترض أنني بدأت مع WordPress 3.0.1 مثبتًا بالفعل وتم نسخ الإضافات المخصصة والموضوع المخصص في الدلائل المناسبة) :

// Create users for the current site
// Delete Hello Dolly Plugin
// Download, Install and Activate repository plugins
// Activate Custom Plugins (assume the plugins are already there)
// Activate Custom Theme
// Delete Hello Post
// Delete Comment on Hello Post
// Create Pages with Starter Content
// Create Initial Custom Post Types with Starter Content
// Create Multiple Menus 
// Create Menu Items for those Menus linking to Pages and wp-login.php
// Create Initial Taxonomy Terms
// Set Desired Permalinks Setting
// Set Static Front Page Setting

هذا حول هذا الموضوع (على الرغم من أنني قد أتعرف على المزيد عند الدخول فيه.)

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

يا شيء آخر ، لا بد لي من البدء في هذا الآن لذلك كلما كان ذلك أفضل! :-)

23
MikeSchinkel

تعيين الروابط الثابتة المطلوبة

يحتوي مشروع سمة جديد (رائع) صادفته هذا الأسبوع ويركز بشدة على وظيفة HTML5/CSS3 وهو يحتوي على نص برمجي "bootstrap" لإنشاء بعض محتوى المرجل ، ودمج إعدادات الرابط الثابت ، وتعيين الجذر النسبي لتثبيت الموقع ، وما إلى ذلك. تسمى الميزات على تنشيط الموضوع. يسمى المشروع جذور ويمكن تنزيل الكود هنا ؛ أنا لا أعتمد على هذا الرمز. ومع ذلك ، فإليك الكود الذي يتم تعيينه تلقائيًا/سنة/اسم البريد مثل بنية الرابط الثابت (وسنان التنشيط أدناه لـ pagenow $ العالمية موضحة هنا: http://foolswisdom.com/wp-activate-theme-actio/ .).

<?php

    global $pagenow;
    if (is_admin() && 'themes.php' === $pagenow && isset( $_GET['activated'])) {


        // set the permalink structure
        if (get_option('permalink_structure') != '/%year%/%postname%/') { 
            update_option('permalink_structure', '/%year%/%postname%/');
      }

        $wp_rewrite->init();
        $wp_rewrite->flush_rules(); 


    }

؟>

4
user4443

حذف Hello Post (مع تعليق)

wp_delete_post( 1, true );

مباشرة من wp_delete_post() docs. المعلمة الثانية الأسلحة النووية تماما ، بدلا من الانتقال إلى سلة المهملات.

إنشاء قوائم

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

$menu = wp_create_nav_menu( 'Pages' );
$menu = wp_get_nav_menu_object( 'Pages' );
$pages = get_pages();

foreach( $pages as $page ) {

$item = array(
'menu-item-db-id' => 0,
'menu-item-object-id' => $page->ID,
'menu-item-type' => 'post_type',
'menu-item-status' => 'publish'
);

wp_update_nav_menu_item( $menu->term_id, 0, $item );
}
3
Rarst

إلقاء نظرة على هذا البرنامج النصي التثبيت. https://github.com/Pravdomil/WP-Quick-Install

آخذ أفكارك وبعض التعليمات البرمجية وأقوم بإنشاء شيء ما ربما تبحث عنه.

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

سقطت مجانا للمساهمة.

0
pravdomil

إذا فهمت ذلك جيدًا ، فأنت تريده من أجل التثبيت inital - فأنا أخشى أن نهجك خاطئ تمامًا.

الطريقة الأفضل والأسهل والموحدة هي إنشاء install.php ووضعه في مجلد wp-content - يتم تحميله تلقائيًا أثناء التثبيت.

هناك يمكنك وضع وظيفة wp_install الخاصة بك (حيث تستخدم وظيفة وورد الخاصة إذا (! function_exist)) حتى تتمكن من إعداد خياراتك بسهولة ، وتنشيط الإضافات ، وملء المنشورات الأولية ، والفئات ، والعلامات ، والمستخدمون ...

قد يكون الخيار الثاني هو الموقف ، حيث تريد مسح wp الموجود بالفعل (على سبيل المثال للإصدار التجريبي الذي تم إعداده كل 30 دقيقة على سبيل المثال باستخدام cron) - يمكنك: (أ) اقتطاع قاعدة البيانات واستخدام الإجراء أعلاه ، أو إنشاء المكون الإضافي الذي يفعل نفسه.

0
user3261