В принципе уже есть наработки. Более того проведена локализация комментариев и отсылки писем. /components/com_easyblog/classes/markitup/sets/bbcode/set.js Код (CODE): name:'Полужирный', key:'B', name:'Курсив', key:'I', name:'Подчёркнутый', key:'U', name:'Изображение', key:'P', name:'Маркированный список', openWith:' name:'Нумерованный список', openWith:' name:'Пункт списка', openWith:' name:'Цитировать', openWith: //{name:'Код', openWith:' name:'Clean', className:"clean", //{name:'Preview', className: name:'Счастливый', openWith: name:'Улыбка', openWith: name:'Удивленный', openWith: name:'Показать язык', openWith: name:'Недоволен', openWith: name:'Подмигиваю', openWith: /components/com_easyblog/classes/markitup/sets/default/set.js Код (CODE): name:'Полужирный', key:'B', openWith: name:'Курсив', key:'I', openWith: name:'Stroke through', key:'S', openWith: name:'Изображения', key:'P', replaceWith: name:'Ссылка', key:'L', openWith: name:'Clean', className: name:'Просмотр', className: Ещё в ru-RU.com_easyblog.ini находим: Код (CODE): COM_EASYBLOG_AGREE_TERMS_AND_CONDITIONS="Я принимаю дописать надо rel="nofollow": Код (CODE): COM_EASYBLOG_AGREE_TERMS_AND_CONDITIONS="Я принимаю Ещё некоторые по переводу: Английский - Перевод - Перевели Код (CODE): COM_EASYBLOG_TOOLBAR_DASHBOARD_SETTINGS="Dashboard" - Приборная панель - "Твой блог" COM_EASYBLOG_DASHBOARD_PAGE_TITLE="Dashboard" - Приборная панель - "Твой блог" COM_EASYBLOG_DASHBOARD_BREADCRUMB="Твой блог" COM_EASYBLOG_DASHBOARD_TOOLBAR_HOME="Твой блог" Выполнена работа по подгонке валидации. Заменён скрипт на другой и т.д. и в ссылках проставл rel="nofollow". Заменён код XFBML facebook на iframe, внесены исправления в RSS ссылки(сделано открытие их в новом окне). Ещё выполнена центровка баннеров Google AdSense. Не люблю когда они слева показываются. В код комментариев внесены исправления и дописаны недостающие атрибут "alt". Удалены теги "/ul" и "span". И был дополнен тег "style" на такую строку "style type="text/javascript"". Ещё были исправлены проблемы с авторизацией. Так как у блога есть своя авторизация. Но даже при включённой интеграции в Блоге с JomSocial форма регистрации выводиться не JomSocial. Эта проблема ещё с JomSocial идёт, правда существуют плагин который правит эту проблему. Но есть простой способ решения проблемы надо вписать редирект в .htaccess: Redirect /component/user/register.html http://www.домен.ru/community/register.html - в этом случае регистрация будет JomSocial, а не Joomla Здесь ошибка из-за отсутствия обязательного атрибута rows (rows="10" cols="20") - высота поля не указана textarea id="comment" title="Position where error was detected." name="comment" В принципе можно и остановиться, я не думаю, что в новой версии это всё будет исправлено. Ещё /components/com_easyblog/helpers/helper.php Ищем: Код (CODE): $googleHTML .= '<script type="text/javascript" src="http://apis.google.com/js/plusone.js"></script>'; $googleHTML .= '<g:plusone size="' . $size . '" href="' . $dataURL . '"></g:plusone>'; $googleHTML .= '</div>'; И вставляем Код (CODE): $googleHTML .= '<script type="text/javascript" src="http://apis.google.com/js/plusone.js">{lang: "ru"}</script>'; $googleHTML .= '<g:plusone size="' . $size . '" href="' . $dataURL . '"></g:plusone>'; $googleHTML .= '</div>'; --------------------------------------------------------- Или вот так на крайней случай: Код (CODE): $googleHTML .= '<script type="text/javascript" src="http://apis.google.com/js/plusone.js">{lang: "ru"}</script>'; $googleHTML .= '<div class="g-plusone" data-size="' . $size . '" data-count="true" data-href="' . $dataURL . '"></div>'; $googleHTML .= '</div>'; - пока нет решения ---------------------------------------------------------- ещё ищем Код (CODE): $twitterHTML = '<div class="social-button retweet"><a href="http://twitter.com/share" class="twitter-share-button" data-url="' . $dataURL . '" data-counturl="'.$dataURL.'" data-count="' . $style .'">Tweet</a><script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script></div>'; Меняем код на этот: Код (CODE): $twitterHTML = '<div class="social-button retweet"> <script src="http://platform.twitter.com/widgets.js" type="text/javascript"></script> <a href="http://twitter.com/share?url=' . $dataURL . '&counturl='.$dataURL.'&count=' . $style .'&lang=ru" class="twitter-share-button">Tweet</a> </div>'; Этот вариант не работает: Код (CODE): $twitterHTML = '<div class="social-button retweet"> <iframe class="twitter-share-button" allowtransparency="true" frameborder="0" scrolling="no" src="http://platform.twitter.com/widgets/tweet_button.html?url='.$dataURL.'&text='.$blog->title.'&count='.$style.'&lang=ru" width="80" height="63"></iframe> </div>'; Всё Ещё правка: /components/com_easyblog/classes/google.php Надо добавить data-locale="ru" Код (CODE): $html = '<div class="social-button google-buzz"> <a href="http://www.google.com/buzz/post" class="google-buzz-button" title="Google Buzz" data-message="' . $row->title . '" data-button-style="normal-count"></a> <script type="text/javascript" src="http://www.google.com/buzz/api/button.js"></script> </div>'; меняем Код (CODE): <div class="social-button google-buzz"> <a title="Отправить в Живую ленту Google" class="google-buzz-button" href="http://www.google.com/buzz/post" data-message="' . $row->title . '" data-button-style="normal-count" data-locale="ru" rel="nofollow"></a> <script type="text/javascript" src="http://www.google.com/buzz/api/button.js"></script> По CSS: /components/com_easyblog/assets/css/common.css Правим "body .stackTip #ezttip" Код (CODE): body .stackTip #ezttip{padding:2px;background:url(../images/dialog/shade.png);border:1px solid #777} body .stackTip #ezttip-in{border:1px solid #666} body .stackTip #ezttip-in-in{padding:5px;background:#fff;border:1px solid #fff;background: #fff;} body .stackTip #ezttip .ezttip-wrap{display:inline-block;width:100%} body .stackTip #ezttip .ulrest, body .stackTip #ezttip .ulrest li{background:none;border:none;clear:none;list-style:none;list-style-image:none;margin:0;overflow:visible;padding:0} body .stackTip #ezttip .ezttip-avatar{float:left;display:inline-block;border:1px solid #fefefe;margin-right:8px} body .stackTip #ezttip .ezttip-avatar img{border:1px solid #555} body .stackTip #ezttip .ezttip-avatar+.ezttip-content{display:table-cell;vertical-align:top} body .stackTip #ezttip .ezttip-title{font:700 12px/1.2 Arial;color:#333;margin:0 0 1px} body .stackTip #ezttip .ezttip-title.title-calendar{ background: url(../icons/calendar.png) no-repeat 0 center; line-height: 20px; padding: 0 0 0 20px; margin: 0 0 5px 0; border-bottom: 1px solid #ccc; } body .stackTip #ezttip .ezttip-entries-list{ list-style: none;} body .stackTip #ezttip .ezttip-entries-list li{background:url(../icons/arrow-right.png) no-repeat 0 center; margin: 0; padding: 0 0 0 20px;} /*body .stackTip #ezttip .ezttip-tagwrap{margin-right:12px} */ на это "body .stackTip .ezttip" Код (CODE): body .stackTip .ezttip{padding:2px;background:url(../images/dialog/shade.png);border:1px solid #777} body .stackTip .ezttip-in{border:1px solid #666} body .stackTip .ezttip-in-in{padding:5px;background:#fff;border:1px solid #fff;background: #fff;} body .stackTip .ezttip .ezttip-wrap{display:inline-block;width:100%} body .stackTip .ezttip .ulrest, body .stackTip .ezttip .ulrest li{background:none;border:none;clear:none;list-style:none;list-style-image:none;margin:0;overflow:visible;padding:0} body .stackTip .ezttip .ezttip-avatar{float:left;display:inline-block;border:1px solid #fefefe;margin-right:8px} body .stackTip .ezttip .ezttip-avatar img{border:1px solid #555} body .stackTip .ezttip .ezttip-avatar+.ezttip-content{display:table-cell;vertical-align:top} body .stackTip .ezttip .ezttip-title{font:700 12px/1.2 Arial;color:#333;margin:0 0 1px} body .stackTip .ezttip .ezttip-title.title-calendar{ background: url(../icons/calendar.png) no-repeat 0 center; line-height: 20px; padding: 0 0 0 20px; margin: 0 0 5px 0; border-bottom: 1px solid #ccc; } body .stackTip .ezttip .ezttip-entries-list{ list-style: none;} body .stackTip .ezttip .ezttip-entries-list li{background:url(../icons/arrow-right.png) no-repeat 0 center; margin: 0; padding: 0 0 0 20px;} /*body .stackTip #ezttip .ezttip-tagwrap{margin-right:12px} */ Далее лезем /components/com_easyblog/themes/default/tooltip.blogger.php /components/com_easyblog/themes/default/tooltip.calendar.php /components/com_easyblog/themes/default/tooltip.php /components/com_easyblog/themes/default/tooltip.tags.php /components/com_easyblog/themes/default/tooltip.team.php /components/com_easyblog/themes/dashboard/system/dashboard.entries.php И правим три id на Пример: class="ezttip", class="ezttip-in", class="ezttip-in-in" Как сделать RSS ссылку более привлекательней лезем /components/com_easyblog/helpers/feeds.php И правим Код (CODE): $concat = $sef ? '?' : '&'; на Код (CODE): $concat = $sef ? '?' : '&'; И правим Код (CODE): format=feed&type=rss на Код (CODE): format=feed&type=rss И правим Код (CODE): $concat . 'format=feed&type=atom на Код (CODE): $concat . 'format=feed&type=atom И правим Код (CODE): $join = $sef ? '?' : '&'; на Код (CODE): $join = $sef ? '?' : '&'; И правим Код (CODE): $url .= $atom ? '&type=atom' : '&type=rss'; на Код (CODE): $url .= $atom ? '&type=atom' : '&type=rss'; Кстати, не знаю, что они там делали с "addCustomTag" я раньше менял на "countMenuChildren" /components/com_easyblog/views/entry/view.html.php /components/com_easyblog/helpers/date.php /components/com_easyblog/helpers/comment.php - Теперь замена не помогает))) Ещё ошибочка, не везде где "input", в конце не проставлена "/": /components/com_easyblog/themes/default/blog.comment.box.php Там же находим: Код (CODE): <div class="container"> <textarea id="comment" name="comment" class="textarea"></textarea> </div> Правим на это: Код (CODE): <div class="container"> <textarea id="comment" name="comment" class="textarea" cols="65" rows="8" tabindex="5"></textarea> </div> Далее удаляем лишнее: /components/com_easyblog/helpers/messaging.php /components/com_easyblog/helpers/friends.php - удалить в конце ссылки span /components/com_easyblog/themes/default/blog.trackback.php - удалить в конце лишнюю ul На главной странице блога, можно отображать избранный материал. Но текст вступления отображается "по левому краю", а вам надо "по ширине". Для этого лезем в: /components/com_easyblog/themes/default/blog.featured.module.php Ищем: Код (CODE): <div class="featured-content"> Дописываем после этого: Код (CODE): <div class="featured-content"><p style="text-align: justify;"> и закрыть "p" не забываем перед "div" Есть желание убить ссылку сайта в комментарии правим здесь: /components/com_easyblog/helpers/string.php Ещё /components/com_easyblog/themes/default/blog.item.php Находим div id="eb-fblikes" class="align удаляем id и дописываем style="width:100%;" Кстати в новой Version 2.0.4561 есть глупость id="eb-fblikes" - это они прикрутили width:100)) /components/com_easyblog/themes/default/blog.item.php Код (CODE): <div id="eb-fblikes" class="alignleft"> Решение Код (CODE): <div class="alignleft" style="width:100%"> Как переделать facebook: /components/com_easyblog/classes/facebook.php Код (CODE): $html = '<div id="fb-root"></div><script src="http://connect.facebook.net/' . $locale . '/all.js#xfbml=1"></script><fb:like href="' . $url . '" send="' . $send . '" layout="' . $layout . '" action="' . $verb . '" ' . 'locale="' . $locale . '" colorscheme="' . $theme . '" show_faces="' . $faces . '" style="height: ' . $height . ';" height="' . $height . '"></fb:like>'; Надо её превратить в это: Код (CODE): $html = "<iframe src=\"http://www.facebook.com/plugins/like.php?href=".$url ."&layout=".$layout."&show_faces=".$faces."&width=".$width ."&action=".$verb."&font=".$font."&colorscheme=".$theme ."&height=".$height."\" scrolling=\"no\" frameborder=\"0\" style=\"border:none;overflow:hidden;width:450px;height:".$height ."px;\" ></iframe>"; ------------------------- Здесь /components/com_easyblog/themes/default/ratings.form.php Код (CODE): <form id="<?php echo $elementId; ?>-form" action=""> и замена Код (CODE): title="Very poor" на Код (CODE): alt="Very poor" /components/com_easyblog/themes/default/blog.comment.box.php Код (CODE): <form id="frmComment" name="frmComment" action="javascript:void(null);"> - пока нет решения ------------------------- Ещё по поводу "Любимые закладки" ставим там rel="nofollow": /components/com_easyblog/themes/default/addthis.button.style1.php /components/com_easyblog/themes/default/addthis.button.style2.php /components/com_easyblog/helpers/friends.php Теперь по адресу: /components/com_easyblog/themes/default/blog.read.php /components/com_easyblog/themes/carbon/blog.read.php /components/com_easyblog/helpers/messaging.php /components/com_easyblog/themes/plain/blog.read.php ищем <li class="email"> там где "a" ставим rel="nofollow" /components/com_easyblog/themes/default/blog.blogger.php /components/com_easyblog/themes/default/blog.teams.php Ищем Код (CODE): <a class="ico link-subscribe" href="javascript:eblog.subscription.show( И дописываем в конце rel="nofollow" /components/com_easyblog/themes/default/blog.bloggers.php Код (CODE): <a class="ico link-subscribe" href="javascript:void(0);" onclick="eblog.subscription.show И дописываем в конце rel="nofollow" Аналогично: /components/com_easyblog/themes/default/blog.featured.module.php Код (CODE): <div class="featured-navi"> <div class="featured-a"> <?php for( $i = 1; $i <= count( $featured ); $i++ ){ ?><a class="slider-navi-<?php echo $i;?> item<?php echo $i == 1 ? ' active' : '';?>" href="javascript:void(0);" onclick="eblog.featured.slider.slide( '<?php echo $i;?>' , 'featured-entries' );" rel="nofollow"><span><?php echo $i;?></span></a><?php } ?> </div> Теперь делаем чтоб баннер был всегда по середине лезем: /components/com_easyblog/themes/default/blog.adsense.php Ищем: Код (CODE): <div class="adsense-wrap"> дописываем: Код (CODE): <div class="adsense-wrap" align="center" style="text-align:center;"> Убиваем ссылки пользователей: /components/com_easyblog/themes/default/author.info.php Код (CODE): <span><a href="<?php echo $blogger->getWebsite(); ?>" target="_blank" class="author-url fleft mtm"><?php echo $blogger->getWebsite(); ?></a></span> Ставим rel="nofollow" /components/com_easyblog/themes/default/blog.blogger.php /components/com_easyblog/themes/default/blog.bloggers.php Код (CODE): target="_blank" class="ico link-globe" Ставим rel="nofollow" /components/com_easyblog/themes/default/blog.category.php /components/com_easyblog/themes/default/blog.categories.php Код (CODE): align="top" width="80" height="80" class="avatar" /> Нет "alt" Пока всё DEMO
Бонус две картинки переведены на русский И языковой файл для сайта Version 2.0.4130 - 22th July 2011 - в архиве нет языкового файла для админ панели в файле bbcode.zip есть перевод кнопок
Вот вам ссылка на проверку Validate by URI http://validator.w3.org/?uri - вам надо только ввести адрес)))
Сенкс за переводик Но у меня вопросик к тебе есть, - не сталкивался с подобной проблемой? Это происходит при интеграции аватар из комьюнити, джомсоциал и т.п., когда по умолчанию стоят, то такого нет... при обновлении странички ава становится на место... Не могу понять где копать(( Буду очень признательна за ответ!
Ещё заметил странную вещь это голосование Код (CODE): <form id="blog-5-ratings-form"> <div id="blog-5-ratings" class="star-location prel"> <input type="radio" name="newrate" value="1" title="Very poor" class="odd" /> <input type="radio" name="newrate" value="2" title="Poor" /> <input type="radio" name="newrate" value="3" title="Not that bad" /> <input type="radio" name="newrate" value="4" title="Fair" /> <input type="radio" name="newrate" value="5" title="Average" /> <input type="radio" name="newrate" value="6" title="Almost good" /> <input type="radio" name="newrate" value="7" title="Good" /> <input type="radio" name="newrate" value="8" title="Very good" /> <input type="radio" name="newrate" value="9" title="Excellent" /> <input type="radio" name="newrate" value="10" title="Perfect" /> <input type="hidden" id="blog-5-ratings-uid" value="5" /> <span class="ratings-value"> <span class="in"><span></span><b>0</b> голосов</span> </span> </div> </form> Что бросается в глаза отсутствие "action": Код (CODE): <form id="blog-5-ratings-form"> должно быть так: Код (CODE): <form action="URL"> ... </form> Второе это title который не отображается. Скорей всего это всё здесь /components/com_easyblog/themes/default/ratings.form.php Не могу понять почему так не сделали: Код (CODE): <div class=\"extravote-container".$stars."\"".( $xid != 'x' ? "" : " style=\"margin-top:5px;\"" )."> <ul class=\"extravote-stars".$stars."\"> <li id=\"rating_".$id."_".$xid."\" class=\"current-rating\" style=\"width:".(int)$percent."%;\"></li> <li><a href=\"javascript:void(null)\" onclick=\"javascript:JVXVote(".$id.",1,".$rating_sum.",".$rating_count.",'".$xid."',".$counter.");\" title=\"".JTEXT::_('Very Poor')."\" class=\"ev-one-star\">1</a></li> <li><a href=\"javascript:void(null)\" onclick=\"javascript:JVXVote(".$id.",2,".$rating_sum.",".$rating_count.",'".$xid."',".$counter.");\" title=\"".JTEXT::_('Poor')."\" class=\"ev-two-stars\">2</a></li> <li><a href=\"javascript:void(null)\" onclick=\"javascript:JVXVote(".$id.",3,".$rating_sum.",".$rating_count.",'".$xid."',".$counter.");\" title=\"".JTEXT::_('Regular')."\" class=\"ev-three-stars\">3</a></li> <li><a href=\"javascript:void(null)\" onclick=\"javascript:JVXVote(".$id.",4,".$rating_sum.",".$rating_count.",'".$xid."',".$counter.");\" title=\"".JTEXT::_('Good')."\" class=\"ev-four-stars\">4</a></li> <li><a href=\"javascript:void(null)\" onclick=\"javascript:JVXVote(".$id.",5,".$rating_sum.",".$rating_count.",'".$xid."',".$counter.");\" title=\"".JTEXT::_('Very Good')."\" class=\"ev-five-stars\">5</a></li> </ul> </div> ну или вот так: Код (CODE): if (isset($row->rating_count) && $params->get( 'show_vote' ) && !$params->get( 'popup' )) { JPlugin::loadLanguage( 'plg_content_vote' ); $html .= '<form method="post" action="' . $uri->toString( ). '">'; $img = ''; // look for images in template if available $starImageOn = JHTML::_('image.site', 'rating_star.png', '/images/M_images/' ); $starImageOff = JHTML::_('image.site', 'rating_star_blank.png', '/images/M_images/' ); for ($i=0; $i < $row->rating; $i++) { $img .= $starImageOn; } for ($i=$row->rating; $i < 5; $i++) { $img .= $starImageOff; } $html .= '<span class="content_rating">'; $html .= JText::_( 'User Rating' ).':'. $img .' / '; $html .= intval( $row->rating_count ); $html .= "</span>\n<br />\n"; if (!$params->get( 'intro_only' )) { $html .= '<span class="content_vote">'; $html .= JText::_( 'Poor' ); $html .= '<input type="radio" alt="vote 1 star" name="user_rating" value="1" />'; $html .= '<input type="radio" alt="vote 2 star" name="user_rating" value="2" />'; $html .= '<input type="radio" alt="vote 3 star" name="user_rating" value="3" />'; $html .= '<input type="radio" alt="vote 4 star" name="user_rating" value="4" />'; $html .= '<input type="radio" alt="vote 5 star" name="user_rating" value="5" checked="checked" />'; $html .= JText::_( 'Best' ); $html .= ' <input class="button" type="submit" name="submit_vote" value="'. JText::_( 'Rate' ).'" />'; $html .= '<input type="hidden" name="task" value="vote" />'; $html .= '<input type="hidden" name="option" value="com_content" />'; $html .= '<input type="hidden" name="cid" value="'. $id .'" />'; $html .= '<input type="hidden" name="url" value="'. $uri->toString( ).'" />'; $html .= '</span>'; } $html .= '</form>'; Я решил переделать так: Код (CODE): <form id="<?php echo $elementId; ?>-form" action="<?php echo $uid;?>"> <?php if( !$locked ): ?> <div id="<?php echo $elementId; ?>-command" class="blog-rating-text"> <span class="blog-rating-arrow"></span> <div class="rating-text"> <?php if( !empty( $command ) ): ?> <?php echo $command; ?> <?php endif; ?> </div> </div> <?php endif; ?> <?php if( $voted ){ ?> <div class="blog-rating-text voted"> <span class="blog-rating-arrow"></span> <div class="rating-text"> <?php echo JText::_( 'COM_EASYBLOG_RATINGS_ALREADY_RATED' );?> </div> </div> <?php } ?> <div id="<?php echo $elementId; ?>" class="star-location prel"> <input type="radio" alt="Very poor" name="newrate" value="1" <?php echo ($rating == 1 )? ' checked="checked"' : '';?> class="odd" /> <input type="radio" alt="Poor" name="newrate" value="2" <?php echo ($rating == 2 )? ' checked="checked"' : '';?> /> <input type="radio" alt="Not that bad" name="newrate" value="3" <?php echo ($rating == 3 )? ' checked="checked"' : '';?> /> <input type="radio" alt="Fair" name="newrate" value="4" <?php echo ($rating == 4 )? ' checked="checked"' : '';?> /> <input type="radio" alt="Average" name="newrate" value="5" <?php echo ($rating == 5 )? ' checked="checked"' : '';?> /> <input type="radio" alt="Almost good" name="newrate" value="6" <?php echo ($rating == 6 )? ' checked="checked"' : '';?> /> <input type="radio" alt="Good" name="newrate" value="7" <?php echo ($rating == 7 )? ' checked="checked"' : '';?> /> <input type="radio" alt="Very good" name="newrate" value="8" <?php echo ($rating == 8 )? ' checked="checked"' : '';?> /> <input type="radio" alt="Excellent" name="newrate" value="9" <?php echo ($rating == 9 )? ' checked="checked"' : '';?> /> <input type="radio" alt="Perfect" name="newrate" value="10" <?php echo ($rating == 10 )? ' checked="checked"' : '';?> /> <input type="hidden" id="<?php echo $elementId; ?>-uid" value="<?php echo $uid;?>" /> <span class="ratings-value"> <span class="in"><?php echo JText::sprintf( 'COM_EASYBLOG_RATINGS_TOTAL_VOTES' , $total , $this->getNouns( 'COM_EASYBLOG_RATINGS_VOTES_COUNT' , $total ) );?></span> </span> </div> </form>
Осталось только придумать как этот код обыграть и всё))) <div class="stackTip tooltip-blogger" data-options='{"my":"left top","at":"right bottom","of":{"traverseUsing":"prev"}}'>
Есть ещё пару исправлений, чтобы избежать ошибки! Наверно знаете, что такой код: Код (CODE): <script type="text/javascript"> document.write ('<table width="100%" border="1">'); for (i=1; i<6; i++) { document.writeln("<tr>"); for (j=1; j<6; j++) document.write("<td>" + i + j + "<\/td>"); document.writeln("<\/tr>"); } document.write ("<\/table> "); </script> Можно закрыть: Код (CODE): <script type="text/javascript"> <!-- document.write ('<table width="100%" border="1">'); for (i=1; i<6; i++) { document.writeln("<tr>"); for (j=1; j<6; j++) document.write("<td>" + i + j + "<\/td>"); document.writeln("<\/tr>"); } document.write ("<\/table> "); //--> </script> Но иногда можно с помощью CDATA Код (CODE): <script type="text/javascript"> //<![CDATA[ здесь скрипт //]]> </script> или так Код (CODE): <script type="text/javascript"> /* <![CDATA[ */ function externalLinks() { links = document.getElementsByTagName("a"); for (i=0; i<links.length; i++) { link = links[i]; if (link.getAttribute("href") && link.getAttribute("rel") == "external") link.target = "_blank"; } } window.onload = externalLinks; /* ]]> */ </script> - безусловна в различных случаях будет свой способ, так что пробуем, да прибудет с вами сила! Надеюсь мои подсказки были полезными для вас!