Wordpress siteleri kurulumum (WP + eklentileri + tema) için nasıl bir bash yükleme komut dosyası oluşturabilirim?


9

Wordpress ile birçok web sitesi oluşturuyorum ve ilk kurulumum her zaman aynı:

  • WP'nin son sürümü
  • Yaklaşık 5 eklentinin son sürümleri
  • Çıplak gelişim temam

Bunları ayrı ayrı indirmek / yüklemek ve her yeni projeye başladığımda bunu elle yapmak yerine, bunu yapacak bir bash betiği oluşturmak istiyorum:

  • Wordpress'in en son sürümünü indirin
  • halletmek
  • X eklentisinin en son sürümünü indirin
  • WP eklentileri klasörünü aç
  • Çıplak temamı indir
  • Temalar klasörüne aç

Şimdi kolay son WP edilir indirirken (http://wordpress.org/latest.tar.gz), benim de çıplak tema indirirken, ancak denilen değil gibi, bir eklentinin son sürümünü alma konusunda sorun yaşıyorum latest.tar.gzama specifict sürümü olan isimler (ör: wptouch.1.9.26.zip)

DÜZENLEME: Şimdi bir eklentinin Geçerli sürümünün tam URL'sini bulmak için bash komut dosyasında cURL kullanmak mümkünse merak ediyorum . Fikir, sayfayı getirmek ve sonra değerini hrefparagraftan sonraki değeri bulmak olacaktır <h3>Current Version</h3>.

İşte bir örnek, WP'deki tüm eklenti indirme sayfaları aşağıdaki gibidir:

<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>

Yanıtlar:


4

Her zaman en son eklentiyi almak için örneğin eklentimi al:

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

en son indirme bağlantısı:

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

ancak sürümü indirme bağlantısından kaldırırsanız her zaman en son sürümü alırsınız:

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

DÜZENLEME: En son wordpress ve eklentilerin bir klasörünü paketten çıkarmayı düşündünüz mü? Sonra yeni bir eklenti veya wordpress ortaya çıkar çıkmaz, basitçe sahip olduklarınızı açın. Daha sonra bash betiğiniz sadece bir kurulumda kullanılacak tüm paketi paketler.


1
Lanet olsun, bu kolaydı, teşekkürler. Şimdi bash senaryosundan çıkıyorum, umarım bir şeyler bir araya getirebilirim. Sonucu buraya göndereceğim.
mike23

Ancak bir soru, örneğin wordpress-file-monitor-plus.zip "Geliştirme Sürümü" altında listelenir, bu en son kararlı sürümle aynı değildir, değil mi?
mike23

Ah anlıyorum. Bu belki de en son sürüm değil ... Şu anda bagajdaki en son sürüm olabilir. Üzgünüm seni bilgilendirmiş olabilirim.
Scott,

2
Buraya SVN ile giderdim. Orada en yüksek sayıya sahip etiketi veya her eklentiden sadece gövdeyi kontrol edebilir / dışa aktarabilirsiniz. Aynı şey WordPress Core için de geçerli .
rofflox

1
Sadece açıp hattı http://plugins.svn.wordpress.org/plugin-name/trunk/readme.txtayrıştırıp Stable Tag: Xsonra indiremez http://downloads.wordpress.org/plugin/plugin-name.X.zipmisiniz?
Ian Dunn

1

Bash komut dosyasını oluşturun:

touch wp_plugins_theme.sh

Yürütülebilir Yap:

chmod +x ./wp_plugins_theme.sh

Bunu kopyalayın:

#!/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

Komutu çalıştır

./wp_plugins_theme.sh

Bunun şimdi eski olduğunu biliyorum, ancak doğru cevaba en yakın olanı olmalıhttps://downloads.wordpress.org/plugin/plugin-name.latest-stable.zip
Sledge Hammer

0

Ben onlar subversion kullanarak güncelleme Wordpress için bir bash betiği yarattı tavsiye .

#!/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/ .

Kurulumu yapmak için bunu değiştirdim. Bu ikinci komut dosyası test edilmemiştir ancak başlamanız gerekir. Kendi create_wordpress_database_and_user.sql dosyasını yazmanız gerekecek - ancak yine de soruda bunu sormadınız, bu yüzden belki de yok sayabilirsiniz.

#!/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

Ben git clonebir tür zavallı adamın bash olarak kullanıyorum .

WordPress git her 30 dakikada bir güncellenir, bu yüzden kendi eklentilerim / temalarımla kendi repoma kopyalarım veya doğrudan ondan çekerim.

Her şey oldukça hızlı, aslında sadece 2 satır ve manuel olarak yapmam gereken tek şey yerel DB oluşturmak ve config.php düzenlemek. Her 30 dakikada bir yapmak istiyorsanız WordPress'i en son sürüme güncellediğinizden emin olmak biraz zor olabilir, ancak genellikle yalnızca kararlı sürümü kullanıyorum ve dev sürümünü başka bir ortamda tutuyorum.

Şöyle görünüyor:

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

Diğer dezavantajı, gerçek WordPress deposundan git ile eklentileri almak biraz zor, git svnkomutu kullanarak bunu yapmak mümkün, ancak henüz çalışmak kolay değil.


0

Wordpress'i kurmak için bir bash betiği oluşturdum.

Bu komut dosyası aşağıdakileri otomatik hale getirir:

  • Wordpress'i otomatik olarak indirin ve yükleyin
  • Parolalarla Varsayılan Kullanıcılar Oluşturun
  • Tüm varsayılan eklentileri yükle
  • Varsayılan veya özel temayı çoğunlukla kullandığınız zip url'siyle yükleyin.

Senaryoyu github.com'da bulabilirsiniz

https://github.com/jeoga/wordpress_install_bash_script

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.