דף הבית מאמרים ג'ומלה! שימוש בפלאש ברכיב הבאנרים המובנה
שימוש בפלאש ברכיב הבאנרים המובנה
רביעי, 20 יוני 2007 02:54

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

בכל שלב נעדכן קובץ שונה (שלושה בסה"כ):
  1. בסביבות שורה 275 בקובץ:
    1. administrator/components/com_banners/admin.banners.html.php
     
    יש לבצע את ההחלפה הבאה:
    1. if (eregi("swf", $_row->imageurl)) {
    2. ?>
    3. <img src="images/blank.png" name="imagelib">
    4. <?php
    לחפש
    1. if (eregi("swf", $_row->imageurl)) {
    2. &nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;$imageurl &nbsp; &nbsp;= "../images/banners/".$_row->imageurl;
    3. &nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;$getflashinfo = @getimagesize( $imageurl );
    4. &nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;echo '<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
    5. codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0"
    6. width="'.$getflashinfo[0].'" height="'.$getflashinfo[1].'">
    7. &nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;<param name="movie" value="'.$imageurl.'" />
    8. &nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;<param name="quality" value="high" />
    9. &nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;<param name="wmode" value="transparent" />
    10. &nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;<embed src="'.$imageurl.'" quality="high" wmode="transparent"
    11. pluginspage="http://www.macromedia.com/go/getflashplayer"
    12. type="application/x-shockwave-flash"
    13. width="'.$getflashinfo[0].'" height="'.$getflashinfo[1].'"></embed>
    14. &nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;</object>';
    להחליף
  2. בסביבות שורה 85 בקובץ:
    1. modules/mod_banners.php
     
    יש לבצע את ההחלפה הבאה:
    1. else if (eregi("\.swf$", $banner->imageurl)) {
    2. &nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;$imageurl &nbsp; &nbsp;= "$mosConfig_live_site/images/banners/".$banner->imageurl;
    3. &nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;echo "<object classid=\"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000\"
    4. codebase=\"http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0\" border=\"5\">
    5. &nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;<param name=\"movie\" value=\"$imageurl\"><embed src=\"$imageurl\" loop=\"false\"
    6. pluginspage=\"http://www.macromedia.com/go/get/flashplayer\" type=\"application/x-shockwave-flash\">
    7. </embed></object>";
    8. }
    לחפש
    אם רוצים, שהלינק המופיע הפאנל הניהול יוצמד באופן אוטומטי לפלאש:
    1. else if (eregi("\.swf$", $banner->imageurl)) {
    2. &nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;$imageurl &nbsp; &nbsp;= "$mosConfig_live_site/images/banners/".$banner->imageurl;
    3. &nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;$link&nbsp; &nbsp;&nbsp; &nbsp;= sefRelToAbs( 'index.php?option=com_banners&amp;task=click&amp;bid='. $banner->bid );
    4. &nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;$getflashinfo = @getimagesize( $imageurl );
    5. &nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;echo '
    6. &nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;<a href="'.$link.'" target="_blank" style="display:block;position:absolute;width:'.$getflashinfo[0].'
    7. px;height:'.$getflashinfo[1].'px;z-index:999;"></a>
    8. &nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
    9. codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0"
    10. width="'.$getflashinfo[0].'" height="'.$getflashinfo[1].'"
    11. style="position:relative;z-index:0;">
    12. &nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;<param name="movie" value="'.$imageurl.'" />
    13. &nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;<param name="quality" value="high" />
    14. &nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;<param name="wmode" value="transparent" />
    15. &nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;<embed src="'.$imageurl.'" quality="high" wmode="transparent" pluginspage="http://www.macromedia.com/go/getflashplayer"
    16. type="application/x-shockwave-flash"
    17. width="'.$getflashinfo[0].'" height="'.$getflashinfo[1].'"
    18. style="position:relative;z-index:1;"></embed>
    19. &nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;</object>';
    להחליף
    אם רוצים להשתמש בפלאש המכיל הפנייה מובנית (כמו ברוב המקרים):
    1. else if (eregi("\.swf$", $banner->imageurl)) {
    2. &nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;$imageurl &nbsp; &nbsp;= "$mosConfig_live_site/images/banners/".$banner->imageurl;
    3. &nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;$getflashinfo = @getimagesize( $imageurl );
    4. &nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;echo '
    5. &nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
    6. codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0"
    7. width="'.$getflashinfo[0].'" height="'.$getflashinfo[1].'"
    8. style="position:relative;z-index:0;">
    9. &nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;<param name="movie" value="'.$imageurl.'" />
    10. &nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;<param name="quality" value="high" />
    11. &nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;<param name="wmode" value="transparent" />
    12. &nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;<embed src="'.$imageurl.'" quality="high" wmode="transparent" pluginspage="http://www.macromedia.com/go/getflashplayer"
    13. type="application/x-shockwave-flash"
    14. width="'.$getflashinfo[0].'" height="'.$getflashinfo[1].'"></embed>
    15. &nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;</object>';
    להחליף
  3. בפונקציה images שבקובץ:
    1. includes/joomla.php
     
    ישנו הקטע קוד הבא:
    1. &nbsp; &nbsp;/**
    2. &nbsp; &nbsp;* build the select list to choose an image
    3. &nbsp; &nbsp;*/
    4. &nbsp; &nbsp;function Images
     
    מתחת לקטע זה, בסביבות שורה 4620:
    1. if ( eregi( "bmp|gif|jpg|png", $file ) ) {
    לחפש
    1. if ( eregi( "bmp|gif|jpg|png|swf", $file ) ) {
    להחליף
  4. ובכך הוספנו את התמיכה הנדרשת...
עדכון אחרון ב-ראשון, 17 פברואר 2008 05:39
 

חיפוש