最新版のWordPress(3.5)をダウンロードして、カスタムテーマを作成しました。複数のクライアントにアップロードしてインストールする予定です。サンプル投稿、ページ、コメントをインストール時に追加しないなどのデフォルト設定をカスタマイズすることは可能ですか?そして、アクティブになっているデフォルトのテーマを設定しますか?
Upgrade.phpとschema.phpを見て、それがサンプルの投稿、ページ、コメントが追加されているところですが、デフォルトのテーマが選択されているところがわかりません。これらのファイルを編集する方法についての記事または何をすべきかについてのヒントはありますか?
同じような質問に答えました 。基本的に:
wp-content
のルートに Dropin プラグインをinstall.php
という名前で作成します。
install.php
内に、プラガブル関数の新しいバージョンを作成します wp_install_defaults()
以下のように、不要なデフォルトをすべて削除し、自由にカスタマイズしてください。
update_option('template', 'your-theme');
update_option('stylesheet', 'your-theme');
update_option('current_theme', 'Your Theme');
update_option('my_theme_options', $theme_options_array );
自動起動 バンドルされているプラグイン
すべてを1つのパッケージにまとめます(WordPressファイルとコンテンツファイル:テーマ、プラグイン、install.php
)
これで、インストールを実行するたびにDropinが処理され、新しいサイトがあなたの事前設定で起動します
私は自分の開発環境でもう少しテストをして、他の答えから Gist を作業中のinstall.php
で更新しました。
これには関数wpse_4041_run_activate_plugin($plugin)
(バンドルされたプラグインを有効にするため)と空のwp_new_blog_notification()
(別のプラグインで、WPがaを送信できないように)が含まれます。サイトのインストールに関する通知メール)。
テストには F8 Lite というテーマを使いました。コードの大部分は元のスクリプト(デフォルトのページ、投稿、コメント、カテゴリ、ブログロール)を改変したものです。そして最後に、私のカスタムコマンド(テーマの変更、テーマオプションの設定、プラグインの有効化、プラグインオプションの設定)。
ファイルのコメントを確認してください。
それが最善の方法かどうかはわからないが、テーマのfunctions.php
ファイルの中に、 delete ファイルのwp-content/install.php
となるようなスクリプトを入れます。それは一度だけ( this Answer by @bainternetに基づいて)そしてWPがインストールされた後にだけ走ります。
// If the option doesn't exist and the install script is there, delete it
if ( wpse_25643_run_once( 'my_custom_install_2013' ) )
{
if( file_exists( WP_CONTENT_DIR.'/install.php' ) )
{
unlink( WP_CONTENT_DIR.'/install.php' );
}
}
/**
* Check if option exist
*
* @param string $key
* @return boolean
**/
function wpse_25643_run_once( $key )
{
$test_case = get_option( 'run_once' );
if ( isset( $test_case[$key] ) && $test_case[$key] )
{
return false;
}
else
{
$test_case[$key] = true;
update_option( 'run_once', $test_case );
return true;
}
}
install.php
を使用しない別の方法との関連Q&A:
WordPress Webサイトの「標準」アスペクト用の初期化スクリプト
私はPhingを使ってWPをいくつかのデフォルト(テーマ/プラグインとカスタムコード)と共にインストールするPhpビルドスクリプトに取り組んでいます、それはまだ進行中の作業です。
https://github.com/wycks/WordPhing/
build.xml
の中には、インストール中に実行される以下のようないくつかのphpオプションがあります。
//remove Hello Dolly
delete_plugins(array('hello.php'));
//remove default hello world post
wp_delete_post(1,true);
//remove default sample page
wp_delete_post(2,true);
//remove default Mr.Wordpress comment
wp_delete_comment( 1, true ) ;
ps。私は最新のリリースやLinuxでこれをテストしていません。
必要に応じてインストールを設定してから、 http://infinitewp.com/ /のようなものを使用して、インストールを他のWebサイト用の他の場所に複製します。これが、すべてのプロジェクトの基本インストールに対して行うことです。
あるいは、サイトごとに新しいWordPressを実行する代わりに、既存のWPインストールのバックアップを作成し、それを新しいホスティングアカウントにインポートします。それからFTPを使ってすべてのファイルをコピーし、新しいデータベースのためにwp-config.phpのデータベース設定を更新すれば、すべて設定できます。 InfiniteWPよりも少し複雑ですが、プラグインの支払いは不要です。