ฉันจะสร้างสคริปต์การติดตั้ง bash สำหรับการตั้งค่าไซต์ Wordpress ของฉันได้อย่างไร (WP + ปลั๊กอิน + ธีม)


9

ฉันสร้างเว็บไซต์จำนวนมากด้วย Wordpress และการตั้งค่าเริ่มต้นของฉันนั้นเหมือนกันเสมอ:

  • WP รุ่นล่าสุด
  • ปลั๊กอินประมาณ 5 รุ่นล่าสุด
  • ชุดรูปแบบการพัฒนาของฉันเปล่า

แทนที่จะดาวน์โหลด / อัพโหลดสิ่งเหล่านี้แยกต่างหากและทำด้วยมือทุกครั้งที่ฉันเริ่มโครงการใหม่ฉันต้องการสร้างสคริปต์ทุบตีที่จะทำสิ่งนี้:

  • ดาวน์โหลด Wordpress เวอร์ชั่นล่าสุด
  • เปิดเครื่องรูด
  • ดาวน์โหลด plugin X เวอร์ชันล่าสุด
  • เปิดเครื่องรูดโฟลเดอร์ WP
  • ดาวน์โหลดชุดรูปแบบเปล่าของฉัน
  • เปิดเครื่องรูดไปยังโฟลเดอร์ชุดรูปแบบ

ตอนนี้การดาวน์โหลด WP ล่าสุดนั้นเป็นเรื่องง่าย (http://wordpress.org/latest.tar.gz) ดาวน์โหลดธีมเปล่าของฉันด้วย แต่ฉันมีปัญหาในการรับปลั๊กอินเวอร์ชันล่าสุดเนื่องจากพวกเขาไม่ได้เรียกlatest.tar.gzแต่เฉพาะเจาะจง ชื่อที่มีรุ่น (เช่น: wptouch.1.9.26.zip)

แก้ไข: ดังนั้นฉันสงสัยตอนนี้ถ้าเป็นไปได้ที่จะใช้cURLในสคริปต์ทุบตีของฉันเพื่อค้นหา URL ที่แน่นอนของปลั๊กอินรุ่นปัจจุบัน ความคิดที่จะดึงข้อมูลหน้าเว็บแล้วหาค่าของที่อยู่ในวรรคหลังhref<h3>Current Version</h3>

นี่คือตัวอย่างหน้าดาวน์โหลดปลั๊กอินทั้งหมดใน WP เป็นดังนี้:

<h3>Current Version</h3>
<p class="unmarked-list">
    <a href="http://downloads.wordpress.org/plugin/jetpack.1.1.2.zip">1.1.2</a>
</p>

คำตอบ:


4

หากต้องการรับปลั๊กอินล่าสุดใช้ตัวอย่างเช่นปลั๊กอินของฉัน:

http://wordpress.org/extend/plugins/wordpress-file-monitor-plus/

ลิงค์ดาวน์โหลดล่าสุดคือ:

http://downloads.wordpress.org/plugin/wordpress-file-monitor-plus.1.1.zip

แต่ถ้าคุณลบเวอร์ชันออกจากลิงค์ดาวน์โหลดคุณจะได้รับเวอร์ชันล่าสุดเสมอ:

http://downloads.wordpress.org/plugin/wordpress-file-monitor-plus.zip

แก้ไข: คุณได้พิจารณาจัดเก็บโฟลเดอร์ของ wordpress และปลั๊กอินล่าสุดแล้วหรือยัง? จากนั้นทันทีที่ปลั๊กอินหรือเวิร์ดเพรสใหม่ออกมาคุณเพียงแค่แกะกล่องออกจากสิ่งที่คุณมี จากนั้นสคริปต์ทุบตีของคุณจะรวมชุดล็อตทั้งหมดที่จะใช้ในการติดตั้ง


1
Dammit นั้นง่ายมากขอบคุณ ตอนนี้ฉันเลิกใช้สคริปต์สคริปท์ฉันหวังว่าฉันจะสามารถรวมอะไรบางอย่างเข้าด้วยกัน ฉันจะโพสต์ผลลัพธ์ที่นี่
mike23

แม้ว่าหนึ่งคำถามในตัวอย่างของคุณ wordpress-file-monitor-plus.zip อยู่ภายใต้ "รุ่นพัฒนา" ซึ่งไม่เหมือนกับรุ่นเสถียรล่าสุดใช่หรือไม่
mike23

อ้อเข้าใจแล้ว. นี่อาจไม่ใช่เวอร์ชั่นล่าสุด ... มันอาจเป็นสิ่งที่ล่าสุดในท้ายรถ ขออภัยฉันอาจจะพลาดที่จะแจ้งให้คุณทราบ
สกอตต์

2
ฉันจะไปกับ SVN ที่นี่ มีคุณสามารถชำระเงิน / ส่งออกแท็กที่มีจำนวนมากที่สุดหรือเพียงแค่ลำต้นจากปลั๊กอินทุก เดียวกันจะไปสำหรับWordPress หลัก
rofflox

1
คุณไม่สามารถเปิดhttp://plugins.svn.wordpress.org/plugin-name/trunk/readme.txtแยกStable Tag: Xบรรทัดแล้วดาวน์โหลดhttp://downloads.wordpress.org/plugin/plugin-name.X.zipหรือไม่
Ian Dunn

1

สร้างสคริปต์ทุบตี:

touch wp_plugins_theme.sh

ทำให้ปฏิบัติการ:

chmod +x ./wp_plugins_theme.sh

คัดลอกสิ่งนี้ลงไป:

#!/bin/bash
#
#  This script is to automate a common WP setup.
#
#   - Download the latest version of Wordpress
#   - Unzip
#   - Download the latest version of plugin X
#   - Unzip to WP plugins folder
#   - Download theme
#   - Unzip to themes folder

: ' Define Directory
'

# Change to your directory name
# Final site will be $PWD/$dirname/www/

dirname=ExampleWPPluginsTheme

# WordPress Directories used later

plugins=$PWD/$dirname/www/wp-content/plugins
themes=$PWD/$dirname/www/wp-content/themes

: ' Clear Example Dir
'

rm -rf $PWD/$dirname
mkdir -p $PWD/$dirname/www
cd $PWD/$dirname;

: ' Download the latest version of Wordpress
'

curl -OL "https://wordpress.org/latest.tar.gz"

: ' Unzip
'

tar -zxvf "./latest.tar.gz" -C 'www' --strip-components=1

: ' Download the latest version of plugin X
'

curl -OL "https://downloads.wordpress.org/plugin/query-monitor.latest-stable.zip"
curl -OL "https://downloads.wordpress.org/plugin/wp-optimize.latest-stable.zip"

: ' Unzip to WP plugins folder
'

tar -zxvf "./query-monitor.latest-stable.zip" -C $plugins
tar -zxvf "./wp-optimize.latest-stable.zip" -C $plugins

: ' Download theme
'

curl -OL "https://github.com/Automattic/_s/archive/master.zip"

: ' Unzip to themes folder
'

tar -zxvf "./master.zip" -C $themes

: ' Done
'

# List the folder contents

ls -la $PWD

เรียกใช้คำสั่ง

./wp_plugins_theme.sh

ฉันรู้ว่านี่เก่าแล้ว แต่มันเป็นคำตอบที่ใกล้เคียงที่สุดที่ควรจะเป็นhttps://downloads.wordpress.org/plugin/plugin-name.latest-stable.zip
Sledge Hammer

0

ฉันสร้างสคริปต์ทุบตีเพื่อปรับปรุงการใช้ Wordpress โค่นล้มขณะที่พวกเขาแนะนำ

#!/bin/bash
# usage: upgrade_wordpress.sh X.X.X
# http://codex.wordpress.org/Installing/Updating_WordPress_with_Subversion

# http://stackoverflow.com/a/699613/327074
die () {
    echo >&2 "$@"
    exit 1
}

# check that there is one argument
[ "$#" -eq 1 ] || die "usage: upgrade_wordpress.sh X.X.X"
# http://stackoverflow.com/a/2220646/327074
response=$(curl --write-out %{http_code} --silent --output /dev/null http://core.svn.wordpress.org/tags/$1/)
# check that the tag repository exists, i.e. returns a HTTP 200 status code
[ "$response" -eq 200 ] || die "Couldn't find Wordpress version, http error: $response"
# Take a backup
mysqldump -u root -p wordpress > wordpress_upgrade_to_$1_bak.sql
# Updating to a New Stable Version
cd /path/to/wordpress/dir/
svn sw http://core.svn.wordpress.org/tags/$1/ .

ฉันได้แก้ไขสิ่งนี้เพื่อทำการติดตั้ง สคริปต์ที่สองนี้ไม่ได้ทดสอบ แต่คุณควรเริ่มต้นได้ คุณจะต้องเขียน create_wordpress_database_and_user.sql ของคุณเอง - แต่คุณไม่ได้ถามถึงสิ่งนั้นในคำถามดังนั้นบางทีคุณอาจเพิกเฉยได้

#!/bin/bash
# usage: install_wordpress.sh X.X.X /path/to/wordpress/dir
# http://codex.wordpress.org/Installing/Updating_WordPress_with_Subversion

# http://stackoverflow.com/a/699613/327074
die () {
    echo >&2 "$@"
    exit 1
}
# check that there are two arguments
[ "$#" -eq 2 ] || die "usage: install_wordpress.sh X.X.X /path/to/wordpress/dir"
# http://stackoverflow.com/a/2220646/327074
response=$(curl --write-out %{http_code} --silent --output /dev/null http://core.svn.wordpress.org/tags/$1/)
# check that the tag repository exists, i.e. returns a HTTP 200 status code
[ "$response" -eq 200 ] || die "Could not find Wordpress version, http error: $response"
# create directory if needed
if [ ! -d $2 ]; then
    mkdir $2
fi
# Install the database
mysql -u root -p < create_wordpress_database_and_user.sql
# Checking out stable version
cd $2
svn co http://core.svn.wordpress.org/tags/$1/ .

0

ฉันได้ใช้git cloneเป็นทุบตีชายยากจน

WordPress คอมไพล์มีการปรับปรุงทุก ๆ 30 นาทีดังนั้นฉันจึงโคลนมันเป็น repo ของฉันเองด้วยปลั๊กอิน / ชุดรูปแบบของฉันหรือเพียงดึงโดยตรงจากมัน

สิ่งทั้งหมดนั้นค่อนข้างเร็วจริง ๆ แล้วมันมีแค่ 2 บรรทัดและสิ่งเดียวที่ฉันต้องทำด้วยตนเองคือสร้างฐานข้อมูลท้องถิ่นและแก้ไข config.php อาจเป็นเรื่องยากเล็กน้อยที่จะต้องแน่ใจว่าคุณได้อัปเดต WordPress เป็นเวอร์ชันล่าสุดหากคุณต้องการทำทุก ๆ 30 นาที แต่โดยทั่วไปฉันจะใช้เฉพาะเวอร์ชันที่เสถียรและเก็บเวอร์ชัน dev ไว้ในสภาพแวดล้อมอื่น

ดูเหมือนว่านี้:

mkdir wordpress-project
git clone ..url-to-my-wordpress-base 

ข้อเสียอีกอย่างคือมันยากที่จะรับปลั๊กอินจาก WordPress repo จริงผ่าน git มันเป็นไปได้ที่จะทำได้โดยใช้git svnคำสั่ง แต่ฉันคิดว่ามันไม่ง่ายที่จะทำงานด้วย


0

ฉันได้สร้างสคริปต์ทุบตีเพื่อติดตั้งเวิร์ดเพรส

สคริปต์นี้จะทำสิ่งต่อไปนี้โดยอัตโนมัติ:

  • Downlaod และติดตั้ง Wordpress โดยอัตโนมัติ
  • สร้างผู้ใช้เริ่มต้นด้วยรหัสผ่าน
  • ติดตั้งปลั๊กอินเริ่มต้นทั้งหมด
  • ติดตั้งธีมเริ่มต้นหรือธีมที่กำหนดเองโดย zip url ที่คุณใช้บ่อย

คุณสามารถค้นหาสคริปต์ได้ที่ github.com

https://github.com/jeoga/wordpress_install_bash_script

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.