Αυτό είναι ένα Public Repository που περιέχει scripts για να αρχικοποιούμε ένα staging site σε περιβάλλον WordPress/WooCommerce μέσω SSH.
Το script αυτό έχει σχεδιαστεί για να αυτοματοποιεί τη διαδικασία δημιουργίας ενός "staging" περιβάλλοντος. Αναλαμβάνει όλες τις παρακάτω ενέργειες:
- Προσθήκη Prefix "STAGING" στον Τίτλο Site: Ενημερώνει τον τίτλο του site ώστε να ξεκινάει με το prefix
STAGING, ώστε να είναι ευδιάκριτο ότι πρόκειται για staging περιβάλλον. - Ενεργοποίηση "Coming Soon": Θέτει το site σε κατάσταση "Coming Soon" μέσω της λειτουργίας του WooCommerce.
- Αποτροπή Ευρετηρίασης: Αποθαρρύνει τις μηχανές αναζήτησης από το να ευρετηριάσουν το staging site (no-index).
- Ενεργοποίηση Debugging: Ενεργοποιεί τις σταθερές
WP_DEBUGκαιWP_DEBUG_LOGστο αρχείοwp-config.phpγια ευκολότερη αποσφαλμάτωση. - Απενεργοποίηση Plugins: Απενεργοποιεί μια προκαθορισμένη λίστα από plugins που συνήθως δεν χρειάζονται σε staging περιβάλλον (π.χ. caching, import/export, tracking pixels, XML feeds).
- Απενεργοποίηση Custom Admin Monitors: Διαγράφει ρυθμίσεις από το plugin "Custom Admin" που παρακολουθούν feeds ή imports.
- Διακοπή Συγχρονισμού ERP: Απενεργοποιεί τον αυτόματο συγχρονισμό παραγγελιών με συστήματα ERP.
- Αλλαγή Email Διαχειριστή: Αλλάζει το email του διαχειριστή του WordPress.
- Αλλαγή Email Παραληπτών WooCommerce: Αλλάζει τον παραλήπτη για όλα τα email ειδοποιήσεων του WooCommerce στο email του διαχειριστή.
- Περιορισμός Εξερχόμενων Emails: Εγκαθιστά αυτόματα ένα MU-Plugin που επιτρέπει την αποστολή emails μόνο προς διευθύνσεις
@dicha.grκαι προς το[email protected](καθώς και aliases του).
- Πρόσβαση SSH στον server.
- Δικαιώματα
rootήsudoγια τον χρήστη που θα εκτελέσει το script. wgetεγκατεστημένο στον server.- Το site πρέπει να είναι WordPress.
Για να εκτελέσετε το script, συνδεθείτε στον server σας μέσω SSH και μεταβείτε στον κεντρικό κατάλογο (root directory) του WordPress site σας. Στη συνέχεια, εκτελέστε τις παρακάτω εντολές:
# Κατεβάζει το script
wget -q -O staging-setup.sh https://raw.githubusercontent.com/Digital-Challenge/staging-setup/main/staging-setup.sh
# Δίνει δικαιώματα εκτέλεσης
chmod +x staging-setup.sh
# Εκτελεί το script
./staging-setup.shΤο script θα εκτελέσει αυτόματα όλες τις παραπάνω ενέργειες. Μετά την εκτέλεση, το staging-setup.sh και το staging-setup.php θα διαγραφούν αυτόματα από τον server.
Το script είναι σχεδιασμένο για να λειτουργεί χωρίς παραμέτρους. Ωστόσο, περιέχει κάποιες προκαθορισμένες τιμές που ίσως θέλετε να αλλάξετε.
-
Το script αλλάζει το email του διαχειριστή στη διεύθυνση [email protected].
Αν θέλετε να χρησιμοποιήσετε διαφορετικό email, θα πρέπει να τροποποιήσετε το αρχείοstaging-setup.phpστο repository, να δημιουργήσετε ένα νέο branch και να ανοίξετε ένα Pull Request προς το κύριο branch.
Η αλλαγή θα ισχύει για όλα τα μελλοντικά staging sites που θα δημιουργηθούν με αυτό το setup. -
Η λίστα με τα plugins που απενεργοποιούνται ορίζεται στη συνάρτηση
dc_staging_deactivate_pluginsστο ίδιο αρχείο.
Για να αλλάξετε ποια plugins απενεργοποιούνται, πρέπει να κάνετε την αλλαγή στο repository, σε νέο branch, και να ανοίξετε Pull Request.
Οι αλλαγές θα επηρεάζουν μόνο τα staging sites που δημιουργούνται από εδώ και πέρα. -
Το MU-Plugin που περιορίζει τα εξερχόμενα emails εγκαθίσταται στη διαδρομή
wp-content/mu-plugins/restrict-outgoing-emails.php.
Αν θέλετε να επιτρέψετε άλλους παραλήπτες εκτός από @dicha.gr και [email protected], τροποποιήστε το αρχείο στο repository, σε νέο branch, και ανοίξτε Pull Request.
Η αλλαγή θα εφαρμόζεται μόνο σε μελλοντικά staging sites που χρησιμοποιούν αυτό το setup.