הוסטס - פורום אחסון האתרים הגדול בישראל

הוסטס - פורום אחסון האתרים הגדול בישראל (https://hosts.co.il/forums/index.php)
-   פורום תיכנות (https://hosts.co.il/forums/forumdisplay.php?f=14)
-   -   עזרה ב WP, שינוי הטקסט להמשיך לקרוא ← (https://hosts.co.il/forums/showthread.php?t=99467)

אדיר 25-08-12 00:24

אם ככה, בקובץ loop.php חפש:
PHP קוד:

the_content__'Continue reading <span class="meta-nav">&rarr;</span>''twentyten' ) ); 

החלף את הטקסט כמו בדוגמה הקודמת.

RAS 25-08-12 09:15

ציטוט:

נכתב במקור על ידי xPerfection (פרסם 855318)
לדוגמה:
PHP קוד:

function twentyten_continue_reading_link() {
//  return ' <a href="'. get_permalink() . '">' . __( 'Continue reading <span class="meta-nav">&rarr;</span>', 'twentyten' ) . '</a>';
    
return ' <a href="'get_permalink() . '">קרא עוד <span class="meta-nav">&larr;</span></a>';


מאמין לך שאתה רוצה ללמוד (אחרת 2 התגובות האחרונות שלי כאן לא היו קיימות),
ובכל זאת, קצת ניסוי וטעיה וחיפוש עצמאי היו עוזרים לך מאוד.

זה לא נכון לעשות את זה בצורה הזאת. מה שיפה בוורדפרס זה שהיא דינאמית מאוד, ובין היתר יש לה קובץ שפה. תסתכל על הפונקציה הבאה:

PHP קוד:

__('Continue reading <span class="meta-nav">&rarr;</span>''twentyten'

מה שהפונקציה הזאת עושה (בפשטות) זה בעצם כמו לפתוח את קובץ השפה twentyten ומשם לקרוא לשורת msgid שמכילה את המחרוזת הזאת:

PHP קוד:

Continue reading <span class="meta-nav\">&rarr;</span> 

כלומר, תפתח את הקובץ שפה שנמצא בתקיית languages שבתבנית twentyten ותחפש את השורה הבאה למשל: Continue reading

מה שתמצא זה את הדבר הבא:

PHP קוד:

#: functions.php:253 loop-attachment.php:104 loop.php:115 loop.php:143
msgid "Continue reading <span class=\"meta-nav\">&rarr;</span>"
msgstr "" 

אז.. מה שהפונקציה הזאת (הקוד הראשון שכתבתי) עושה זה לקרוא למחרוזת שנמצאת ב msgstr שכרגע היא אצלך "" ואם כך (כלומר - ריקה) היא קוראת לשורת ברירת מחדל msgid שהוכנסה בפונקציה. כדוקומנטציה בלבד נותנים לך גם בשורה הראשונה את כל הקבצים (ומספר השורה) בהן קוראים לפונקציה הזאת. בכל אופן, מה שתצטרך לעשות הוא פשוט לשנות את "" msgstr לדבר הבא:

PHP קוד:

msgstr "קרא עוד <span class=\"meta-nav\">&larr;</span>" 

ועצה שימושית להמשך - כמו שאמרתי וורדפרס היא מאוד דינאמית, תגרום לה להישאר כזאת גם בתבנית שאתה יוצר. לדוגמה מה שראינו עכשיו: אל תכניס טקסט בפונקציות אלא תקרא למחרוזות הללו מהקובץ שפה.

אדיר 25-08-12 11:05

כמובן שעדיף לשנות את זה באפשרויות הלוקליזציה הקיימות.
עם זאת קצת שכחת שמדובר כאן על קבצי mo ו- po ואני בספק אם הוא ידע לעבוד איתם.

ניסית לגרום למה שכתבת לעבוד?
אם היית מנסה היית שם לב שזה לא עובד בצורה הזאת.

הקובץ po הוא לא הקובץ שהמערכת משתמשת בו בפועל, המערכת משתמשת בקובץ mo.
הקובץ mo נוצר מה- po, הבעיה היא שאי אפשר ליצור ו/או לערוך אותו באמצעות עורך טקסט רגיל.
כדי להפוך קבצי po ל- mo צריך תוכנות ייעודיות (כמו Poedit).
ואני חושב שאם פותח האשכול הצליח להגיע עד לכאן כבר יצא לו עשן מהאוזניים וכל זה רק כי הוא רצה לשנות 2 מילים.

הפתרון הוא אומנם bad-practice אבל לבחור בלי ידע בכלל זה הפתרון הכי מתאים כרגע לדעתי.

RAS 25-08-12 13:25

ציטוט:

נכתב במקור על ידי xPerfection (פרסם 855329)
כמובן שעדיף לשנות את זה באפשרויות הלוקליזציה הקיימות.
עם זאת קצת שכחת שמדובר כאן על קבצי mo ו- po ואני בספק אם הוא ידע לעבוד איתם.

ניסית לגרום למה שכתבת לעבוד?
אם היית מנסה היית שם לב שזה לא עובד בצורה הזאת.

הקובץ po הוא לא הקובץ שהמערכת משתמשת בו בפועל, המערכת משתמשת בקובץ mo.
הקובץ mo נוצר מה- po, הבעיה היא שאי אפשר ליצור ו/או לערוך אותו באמצעות עורך טקסט רגיל.
כדי להפוך קבצי po ל- mo צריך תוכנות ייעודיות (כמו Poedit).
ואני חושב שאם פותח האשכול הצליח להגיע עד לכאן כבר יצא לו עשן מהאוזניים וכל זה רק כי הוא רצה לשנות 2 מילים.

הפתרון הוא אומנם bad-practice אבל לבחור בלי ידע בכלל זה הפתרון הכי מתאים כרגע לדעתי.

הפתרון הכי מתאים כרגע זה או לערוך את הקובץ שפה בעזרת פלאגין \ Poedit שזאת גם אפשרות (ויש לו המון מדריכים באינטרנט, גם בעברית אני בטוח) או שבכלל לא לגעת בקוד. מישהו שמתחיל לתכנת לא צריך ללמוד איך להתעסק עם וורדפרס מבחינת קוד לפני שהוא בכלל יודע את הבסיס של ה PHP. |:

ראיתי שהוא כתב שהוא רק רוצה לשנות את זה באתר שלו, אבל אני מבחינתי מציע לו את הדבר הנכון ביותר שאפשר לעשות, כי זה הרי פורום תיכנות והוא צריך כבר מעכשיו להתרגל ל quality כי אחרת לא יצא מהלמידה שלו דבר, ומי כמוך יודע (כמתכנת, לא מכיר אותך אישית) שקוד שכתוב לא טוב יגרום בעתיד לבעיות ואי-דינאמיות.

אדיר 25-08-12 13:47

ציטוט:

נכתב במקור על ידי RAS (פרסם 855333)
הפתרון הכי מתאים כרגע זה או לערוך את הקובץ שפה בעזרת פלאגין \ Poedit שזאת גם אפשרות (ויש לו המון מדריכים באינטרנט, גם בעברית אני בטוח) או שבכלל לא לגעת בקוד. מישהו שמתחיל לתכנת לא צריך ללמוד איך להתעסק עם וורדפרס מבחינת קוד לפני שהוא בכלל יודע את הבסיס של ה PHP. |:

ראיתי שהוא כתב שהוא רק רוצה לשנות את זה באתר שלו, אבל אני מבחינתי מציע לו את הדבר הנכון ביותר שאפשר לעשות, כי זה הרי פורום תיכנות והוא צריך כבר מעכשיו להתרגל ל quality כי אחרת לא יצא מהלמידה שלו דבר, ומי כמוך יודע (כמתכנת, לא מכיר אותך אישית) שקוד שכתוב לא טוב יגרום בעתיד לבעיות ואי-דינאמיות.

איך אתה קובע ששינוי באמצעות קובץ השפה זה פתרון טוב יותר עבורו מאשר שינוי ישיר בקובץ?
הרי חוץ מגמישות הפתרון האחרון מתאים לו יותר כמעט מכל בחינה אחרת שעולה לי לראש כרגע (זמן, מאמץ, ידע, קושי וכו').

זה כמובן לא הפתרון האידיאלי בכל מקרה ולא תמיד ה- best-practice, אבל במקרה הזה זה בהחלט עשוי להיות הפתרון המתאים ביותר.
בכל אופן בוא נחכה לתגובת פותח האשכול ונראה מה יש לו להגיד בעניין.

Shai 25-08-12 14:38

יש לי עכשיו שגיאה....
http://www.webtutorials.co.il/

זה הקוד:
PHP קוד:

function twentyten_continue_reading_link() {
/* return ' <a href="'. get_permalink() . '">' . __( 'Continue reading <span class="meta-nav">&rarr;</span>', 'twentyten' ) . '</a>'; */
    
return ' <a href="'get_permalink() . '">קרא עוד <span class="meta-nav">&larr;</span></a>';



עריכה: העלאתי גיבוי, xPerfection עשיתי מה שאמרת וזה עשה שגיאה.. (ערכתי גם ב loop.php)

אדיר 25-08-12 14:49

בקובץ functions.php תשאיר כמו שהיה במקור.
בקובץ loop.php תראה כאן מה עשית.

Shai 25-08-12 14:57

מה ז"א כמו שהיה במקור? להחזיר למה שהיה לפני שאמרת לי לשנות?
ומה עשיתי ב loop.php אני לא יכול להראות לך, כי העלאתי גיבוי..

אדיר 25-08-12 15:13

אם אתה לא מצליח לשנות אפילו פקודה אחת פשוטה כנראה שבאמת כדאי שתשקיע קצת יותר בלימוד כרגע..
PHP קוד:

the_content__'קרא עוד <span class="meta-nav">&larr;</span>') ); 

ככה.

* אם יהיו לך בעיות עם הקידוד ותראה את זה בג'יבריש, תוודא שהקובץ מקודד כ- utf-8.

Shai 25-08-12 15:41

וואו תודה רבה!! אפשר לנעול!!


כל הזמנים הם GMT +2. הזמן כעת הוא 10:36.

מופעל באמצעות VBulletin גרסה 3.8.6
כל הזכויות שמורות ©
כל הזכויות שמורות לסולל יבוא ורשתות (1997) בע"מ