מסה מצא & החלף וורדפרס מסדי נתונים - בדרך הקלה
יש כמה הזדמנויות שבהן אנחנו צריכים לשנות את כתובות האתר באתר שלנו WordPress באתר. לדוגמה, עלינו לעשות זאת לאחר העברת מסד נתונים של WordPress מאתר אחד, למשל. מ ה http://acme.com
אתר הייצור מרחוק, אל http://acme.dev
אתר פיתוח מקומי במחשב שלנו.
WordPress.org מארח מספר רב של יישומי פלאגין, כגון WP DBManager ו- WP Migrate DB, וישנם גם מספר כלים של צד שלישי שמאפשרים לך מסד נתונים לייבא בקלות. החלק המסובך הוא צורך לשנות כל מופע של כתובת אתר בתוך מסד הנתונים.
לאחר העברת מסד הנתונים, כתובות בתוך זה עדיין מצביע על האתר הישן, במקרה זה acme.com
. ייתכן שתמצא את כתובת האתר הישנה ב- wp_options
טבלה, להגדיר את הערך של SITEURL
ו בית
אפשרויות, וזה כנראה גם מוטבע לאורך מספר שורות ושולחנות אחרים במסד הנתונים. כתובות אתרים ישנות אלו עשויות בסופו של דבר למנוע מהאתר שלך לפעול כראוי, לכן עליך שנה אותם לכתובת האתר החדשה, בדוגמה שלנו acme.dev
.
בשלב זה, גישה לאתר הפיתוח שלנו בכתובת acme.dev
פשוט תוביל לדף ריק.
אז איך נשנה את כל כתובות האתרים הללו במסד הנתונים?
הפעלת שאילתת SQL
בדרך כלל, אנשים יפעלו את שאילתת SQL הבאה המחליפה את ערכי ה- SITEURL
ו בית
אופציות ב - wp_options
שולחן.
UPDATE wp_options SET option_value = החלף (option_value, 'http://acme.com', 'http://acme.dev') WHERE_name = 'home' או option_name = 'siteurl';
לאחר מכן, הם משתמשים בשאילתה אחרת של SQL כדי להחליף את כל המופעים של כתובת האתר ב- wp_posts
טבלה, כלומר ב תוכן דואר
עמודה של כל שורה.
UPDATE wp_posts SET post_content = החלף (post_content, 'http://acme.com', 'http://acme.dev');
הפעלת שאילתות אלה היא פתרון מעשי, אך בו בזמן, לא נוח לעשות זאת. זה יכול להיות אפילו עצב- wracking, לראות כיצד מסד הנתונים עשוי להפוך haywire בשל פיקוח פשוט בתוך השאילתה.
מינוף WP-CLI
נתיב נוסף שאנחנו יכולים לעשות, ואשר מצאתי להיות חלופה שימושי יותר, הוא על ידי מינוף שורת הפקודה WP-CLI. זה אומר שאתה צריך WP-CLI מותקן.
בהנחה שהתקנת WP-CLI ויש לי את wp
הפקודה נגיש כמו הכינוי, לנווט אל הספרייה שבה קבצים וורדפרס האתר שלך מתגוררים.
לאחר מכן, הפעל את הפקודה הבאה:
wp חיפוש להחליף "http://acme.com" http://acme.dev
הפרמטר הראשון, 'http://acme.com'
, הוא הערך הישן שיש להחליף עם השני, 'http://acme.dev'
.
שורת הפקודה תחפש כל הטבלאות בתוך מסד הנתונים, לא רק את תוכן דואר
טור ו wp_options
שולחן, ו להחליף כל מקרה של הערך עבר את הפרמטרים של הפקודה.
כפי שניתן לראות מתוך מסך שלמעלה, סך של 225 תחליפים נעשו. ועשינו את זה באמצעות שורת פקודה פשוטה.
אני חושב שזה ראוי להזכיר כי אנו יכולים להשתמש wp חיפוש להחליף
הפקודה, לא רק עבור החלפת כתובות אתרים, אלא כל פיסת ערך מאוחסנים באתר גם כן. אנו יכולים גם להגביל את הפעולה לתוך טבלה מסוימת על ידי העברת שם הטבלה כפרמטר הרביעי, כדלקמן:
wp search-replace '.jpg ".wbp' wp_posts
הפעלת הפקודה הנ"ל, זה רק לחפש wp_posts
, הטבלה שמאחסנת את התוכן שלנו - פוסטים, דפים וכו '- ולהחליף את תוסף התמונה .jpg
ל .webp
.
WP-CLI עושה ניתוח SQL סבוך נראה אינטואיטיבי יותר, ואתה יכול לעבוד עם זה בצורה נוחה יותר. אם אתה רוצה לכוונן את הפקודות שלך, יש להסתכל על התיעוד של WP-CLI, המספק לך רשימה של אפשרויות לבצע פעולה מתקדמת יותר עם wp חיפוש להחליף
פקודה.