Nav Публикувано Юли 12, 2006 Report Share Публикувано Юли 12, 2006 (Редактиран) mkportal е един лесен начин да си направите портал и то без някакво разбиране от html или php. Предимството й е, че е доста лесна и е напълно интегрирана с форума (не изисква база данни, използва тази на форума, но това значи и, че без форум не можете да сложите mkportal на вашия сайт). Инсталация 1. Първото, което ще ви трябва, е самият mkportal - можете да го изтеглите от http://mkportal.it, а българския превод на mkportal - от тук. Първата стъпка при инсталацията е да посочите на какъв език искате да използват е(българският аз ще го сложа по-късно ) и какъв с какъв форум сте. Поддържаните форуми са: IPB 1.3, IPB 2.x.x, SMF, vBulletin, phpBB. Аз избрах IPB 1.3, но никой не ви ограничава какво да сложите. 2. След това качете файловете. Примерен начин е: http://www.yoursite.com/forum (форума ви)http://www.yoursite.com/mkportal (портала)http://www.yoursite.com/index.php (индекса на портала) 3. Нагласене правата на chmod 777 на следните файлове:mkportal/conf_mk.phpmkportal/cachemkportal/blogmkportal/blog/imagesmkportal/templates/*mkportal/lang/*mkportal/modules/downloads/filemkportal/modules/gallery/albummkportal/modules/reviews/images 4. Вече можете да инсталирате mkportal като напишете http://www.yoursite.com/mkportal/mk_install.phpИзберете с какъв форум сте и езика (по-късно ще можете да добавите и българския). На полето за Site URL се записва адреса на сайта, но автоматично си го намира, така че няма смисъл да го пипате. На Forum Path се записва пътя до форума, но само папката (ако сте сложили форума си в папка forum, просто пишете forum). 5. Махнете mk_install.php и mkportal/upgrades от директорията на сайта ви. Кратко описание на менютата След като влезнете в сайта си, ще забележите различни менюта. Ето малко инфо за всяко:Main Menu – преставлява основното меню, видимо е за всички. Може да се редактира от админ панела на портала.Personal Menu – личното меню за всички потребител. От него можете бързо да смените потребитлеските си настройки. Админите (и естествено ако е добавена някоя доп. група с администраторски права) имат два допълнителни панела: Portal CP (контролен панел за сайта) и Forum CP (контролен панел за форума).Online Users – показва онлайн потребителите, били те във форума или портала, а бутона Last click ще ви покаже како правят потребителите в момента.Chat – при инсталирането на mkportal се слага и чат. Това меню не е свързано с форума, а показва само потребителите, който са в чата на сайта (понеже на някой форуми може да се сложи чат). Accеs the chatroom ще ви отведе в чата.Random Image – меню, което показва някоя произволно избрана картинка от галерията на сайта.Board Menu – това са линкове към форума. New Posts са новите постове, Users – потребителите, Calendar – календара на форума, Help – помощната секция на форума.Last Shouts – показва последните shouts в сайта (например „Добре Дошли”). Calendar – календар на сайта. Нещо, което доста ми хареса е, че показва рождените дни на потребителите.Site Starts – това са статистиките на сайта и форума. Отваряне на форума в рамката на сайтаАко искате да направите така, че форумът да излиза в самият портал с форума, трябва да нагласите от Portal CP -> Forum Page look and feel -> Forum View За IPB 1.3 после редактирайте sources/functions.php (направете бекъп първо)Отворете sources/functions.php и намерете //--------------------------------------- // Close this DB connection //---------------------------------------И добавете след него: //added from MKportal define ( 'IN_MKP', 1 ); require_once "../mkportal/include/IPB13/ipb13_out.php"; $ibforums->skin['template'] = mkportal_board_out($ibforums->skin['template']); //end added За IPB 2.х.хОтваряте /sources/classes/class_display.php (но направете бекъп първо)1. Намерете: function do_output($output_array) { global $Debug;и добавете след него: //added from MKportal define ( 'IN_MKP', 1 ); $MK_PATH = "../"; require $MK_PATH."mkportal/conf_mk.php"; //end added2. Намерете: $output_array['MEMBER_BAR'] = $this->ipsclass->compiled_templates['skin_global']->member_bar($msg_data);и го подменете с: //Mkportal edited if(!$FORUM_VIEW) { $output_array['MEMBER_BAR'] = $this->ipsclass->compiled_templates['skin_global']->member_bar($msg_data); } //end edited3. Намерете: if ( $this->ipsclass->vars['ipb_img_url'] ) { $this->ipsclass->skin['_wrapper'] = preg_replace( "#img\s+?src=[\"']style_(images|avatars|emoticons)(.+?)[\"'](.+?)?".">#is", "img src=\"".$this->ipsclass->vars['ipb_img_url']."style_\\1\\2\"\\3>", $this->ipsclass->skin['_wrapper'] ); }и добавете след него: //added from MKportal if($FORUM_VIEW == 1) { require_once $MK_PATH."mkportal/include/IPB/ipb_out.php"; $this->ipsclass->skin['_wrapper'] = mkportal_board_out($this->ipsclass->skin['_wrapper']); } //end added За SMFОтворете Sources/Subs.php (първо направете бекъп), намерете: // For session check verfication.... don't switch browsers... $_SESSION['USER_AGENT'] = $_SERVER['HTTP_USER_AGENT']; и добавете след него: //added from MKportal if ($header !== false && in_array('main', $context['template_layers'])) { define ( 'IN_MKP', 1 ); require_once "../mkportal/include/SMF/smf_out.php"; mkportal_board_out(); } //end added За phpBB1. Отворете файла includes/page_header.php (направете му бекъп първо), намерете (около 460-ти ред е): $template->assign_block_vars('switch_enable_pm_popup', array()); и го заменете с: //$template->assign_block_vars('switch_enable_pm_popup', array());2. отворете includes/page_tail.php (пак да досадя с бекъпа), намерете: $template->pparse('overall_footer');и добавете след него://added from MKportal global $Checkmkout, $ForumOut; define ( 'IN_MKP', 1 ); $MK_PATH = "../"; require $MK_PATH."mkportal/conf_mk.php"; if($FORUM_VIEW == 1 && !$Checkmkout) { require_once $MK_PATH."mkportal/include/PHPBB/php_out.php"; mkportal_board_out(); } if($FORUM_VIEW == 1 && $Checkmkout) { echo $ForumOut; } //end added3. Отворете includes/template.php (все пак ако не си направите бекъп и нещо се сбърка ще стане лошо, нали ), намерете: eval($this->compiled_code[$handle]);и го подменете с: // modificato da mkportal global $ForumOut, $Checkmkout, $gen_simple_header; if ($handle == "smiliesbody" || $handle == "reviewbody" || $_GET['mode'] == "searchuser" || $gen_simple_header) { $Checkmkout = 1; } $MK_PATH = "./"; if (defined('IN_ADMIN')) { $MK_PATH = "../"; } require $MK_PATH."../mkportal/conf_mk.php"; if ( !defined('IN_ADMIN') && $FORUM_VIEW == 1) { ob_start(); eval($this->compiled_code[$handle]); $ForumOut .= ob_get_contents(); ob_end_clean(); } else { eval($this->compiled_code[$handle]); } // fine modificato4. Не е задължително да го правите и това, но ще махне хедъра, а и е skin-dependentНамерете templates/subSilver/overall_header.tpl (направете бекъп) и махнете (около 230-ти ред се намира): <table width="100%" cellspacing="0" cellpadding="0" border="0"> <tr> <td><a href="{U_INDEX}"><img src="templates/subSilver/images/logo_phpBB.gif" border="0" alt="{L_INDEX}" vspace="1" /></a></td> <td align="center" width="100%" valign="middle"><span class="maintitle">{SITENAME}</span><br /><span class="gen">{SITE_DESCRIPTION}<br /> </span> <table cellspacing="0" cellpadding="2" border="0"> <tr> <td align="center" valign="top" nowrap="nowrap"><span class="mainmenu"> <a href="{U_FAQ}" class="mainmenu"><img src="templates/subSilver/images/icon_mini_faq.gif" width="12" height="13" border="0" alt="{L_FAQ}" hspace="3" />{L_FAQ}</a></span><span class="mainmenu"> <a href="{U_SEARCH}" class="mainmenu"><img src="templates/subSilver/images/icon_mini_search.gif" width="12" height="13" border="0" alt="{L_SEARCH}" hspace="3" />{L_SEARCH}</a> <a href="{U_MEMBERLIST}" class="mainmenu"><img src="templates/subSilver/images/icon_mini_members.gif" width="12" height="13" border="0" alt="{L_MEMBERLIST}" hspace="3" />{L_MEMBERLIST}</a> <a href="{U_GROUP_CP}" class="mainmenu"><img src="templates/subSilver/images/icon_mini_groups.gif" width="12" height="13" border="0" alt="{L_USERGROUPS}" hspace="3" />{L_USERGROUPS}</a> <!-- BEGIN switch_user_logged_out --> <a href="{U_REGISTER}" class="mainmenu"><img src="templates/subSilver/images/icon_mini_register.gif" width="12" height="13" border="0" alt="{L_REGISTER}" hspace="3" />{L_REGISTER}</a></span> <!-- END switch_user_logged_out --> </td> </tr> <tr> <td height="25" align="center" valign="top" nowrap="nowrap"><span class="mainmenu"> <a href="{U_PROFILE}" class="mainmenu"><img src="templates/subSilver/images/icon_mini_profile.gif" width="12" height="13" border="0" alt="{L_PROFILE}" hspace="3" />{L_PROFILE}</a> <a href="{U_PRIVATEMSGS}" class="mainmenu"><img src="templates/subSilver/images/icon_mini_message.gif" width="12" height="13" border="0" alt="{PRIVATE_MESSAGE_INFO}" hspace="3" />{PRIVATE_MESSAGE_INFO}</a> <a href="{U_LOGIN_LOGOUT}" class="mainmenu"><img src="templates/subSilver/images/icon_mini_login.gif" width="12" height="13" border="0" alt="{L_LOGIN_LOGOUT}" hspace="3" />{L_LOGIN_LOGOUT}</a> </span></td> </tr> </table></td> </tr> </table> Кратко описание на админ панела Така, продължавам с кратко описание на Админ панела на портала. Менютата са седем на брой, като във всяко има поне по едно подменю. От горе на долу менютата са:Main – основните неща за форума.Blocks – менютата, там можете да редактирате или да добавяте нови менюта.Internal Pages – тук можете да направите допълнителна страница за сайта(html или php).Internal Modules – общо взето тук можете да редактирате секциите на сайта, малко по–надолу ще сложа повече информация.Skin & Templates – можете тук да промените или добавети някой скин. Полезно мисля, че ще е да знаете, че от тук се наглася чарсета.Languages – езиците, тук можете да редактирате език, да създадете, копирате или изберете основния за портала.Navigation Links – от тук се редактирват линкивете в основното меню, както и тези, които са най–горе, под логото. Main – има четири подменюта :1. Portal Home – ще ви отведе към началото на сайта, един вид „изход от админ панела”.2. Preferences – повечето най–важни неща за самия портал: с какъв форум се работи (ако ще сменяте форума, можете от тук да го промените), къде се намира форума( ако нещо решите до го преместите), как да се отваря форума (в самият сайт ли, да се махат ли лявото и дясното меню при зареждане на форъма ви) и т.н.3. Permissions – правата на различните групи, които са направени във форума. Напрамер може само на модераторите да се разреши да пускат новина или само те да добавят неща за сваляне и т.н.4. Waiting approval – ако някъде сте нагласили (Internal Modules), при добавянето на нов елемент да иска разрешение от администратора. Там можете да видите дали някой чака разрешение от вас да бъде качено нещо на сайта (било то новина, сайт в класацията, нещо за сваляне и т.н.). Blocks – също е с четири подменюта:1. Position – от тук можете да размествате менютата (блоковете) от коя страна да бъдат, както и редът им. Също от тук можете да активирате/деактивирате меню.2. Titles – еми като не ви харесва името на някое меню (или не е на български), защо да не го смените? Само ако ще е на български и не се разбират заглавията, вижте дали енкодинга е нагласен правилно.3. Managing – доста полезно нещо, с него можете да нагласите кои групи (от форума) могат да виждат определени менюта.4. Creating – създаване на нови блокове. В зависимост от нуждата ви, можете да изберете между HTML Block, PHP Block и Internal Page Links Block. От тук можете да направите меню „приятели” или да добавите брояч. Internal Pages – тук са само две. С две думи - тук е секцията за вашите страници:1. Managing – ако имате вече създадени, тук могат да бъдат редактирани, а и е показан самият адрес на страницата (не че и при създаването на някоя страница не ви се дава линка, но не е задълително да помните всички )2. Creating – мястото за създаване на страници. Според нуждите ви, можете да направите html или php страница (не е задължително, но ако ви трябва нещо, което го няма в самия портал, можете да го добавите ). Internal Modules – администриране на повечето части на форума (например секциите, rss news или пък анкетите):1. News – нагласяне на броя на новини, който да се показва на една страница, дали да се иска одобрение от админ или пък добавяне на секции.2. Board News – новини от някоя/някои секции на форума.3. Rss News – настройки на rss новините на портала .4. Blog – общо взето повечето настройки за личните блогове, от тук можете и да спрете тази опция.5. Chat – спиране/пускане на чата в сайта. Можете и да изберете сървър, порт и дефаут канал за чата. 6. Shoutbox – колко shouts да бъдат публикувани в блока, колко да се пазят в архив и колко да бъдт показваи на страници. Също като chat-а, можете и да спрете тази опция.7. Image Gallery – можете да спрете опцията (пфф, то нявсякъде може, не знам и аз защо го пиша :lol:). Можете да настроите дали да слага watermark picture, т.е. да „подписва” картинките, а и къде да бъде. Също можете и да направите различни категории. Можете и да редактирате картинка и да добавите също от там вместо от сайта.8. Downloads – администриране на категориите, големината на качените файлове и каване на файл от тук вместо от „За сваляне” секцията.9. TopSite – можете да видите кои сайтове са „одобрени” и кои – не (разбира се ако сте задали такава опция).10. Polls – по принцип не можете да създадете анкета от самия сайт, но пък можете да използвате някоя от форума (все пак порталът е интегриран с форума ви ).11. Reviews – настройки за категориите в секцията за статии/ревюта. Можете да добавяте, променяте или изтривате секция, но внимавайте с триенето, защото и файловете в изтрития раздел също се махат.12. Quotes – последното подменю от Internal Modules - можете да видите кои цитати са „одобрени”(approved) от админ и кои чакат (разбира се ако сте нагласили опцията да искат потвърждаване от админа). Skin & Templates1. Skin Management – не може да се каже много, аз повечето го споменах по–горе. Има два скина: default (стандартния) и Forum (скина на форума). Languages1. Management – редактиране, създаване и избор на език за сайта. Navigation Links1. Navigation Bar – това е лентата със секциите под логото. Можете да добавяте нов линк или пък да махнете/промените вече съществуващ.2. Portal Menu – главното меню (блок). По принцип е разположено от лявата страна и на първо място. Можете да добавяте нов линк или пък да махнете/промените вече съществуващ както при Navigation Bar. П.П.: българският сайт за mkportal e http://mkportal.cms-bg.org/, но не е много пълен. Автор: Николай Ванков(Nav)Всички права върху текущата статия са собственост на автора им и нямат право да бъдат възпроизвеждани под каквато и да е форма без изричното съгласие на автора. Редактиран Юли 24, 2006 от Nav Цитирай Link to comment Сподели другаде More sharing options...
lana lang Публикувано Юли 3, 2007 Report Share Публикувано Юли 3, 2007 Много полезно инфо, но въпреки това не открих решение за моите проблеми. :(Та проблемите са следните: ползвам МКPortal M1.1 Rc1 + IPB 2.1.7. Във форума съм си добавила тагове, които подравняват даден текст вляво или вдясно от дадена картинка (ето така изглежда подравняването). Обаче като дам в портала да ми вади новина, текста на която е форматиран с тези допълнителни тагове, в портала всичко се омазва - не 'чете' таговете и излизат като текст ... По какъв начин мога да добавя и в Портала тези тагове (както ръчно си ги добавих и в Инвижъна)? Рових из Контролния панел на Портала, но не намерих файл или някаква друга опция, за добавяне на нови тагове. Някой знае ли в кой файл и какво точно трябва да се добави, за да функционират правилно таговете за подравняване на текста и в Портала? И понеже всички гадости вървят в комплект минимум по две, та и още един проблем (поне за мен). Когато извади в Портала някоя новина, изписва името на новината, автора и като капак слага и аватара на потребителя, пуснал новината Всичко хубаво, ама тоя аватар дразни много ( ей го гада) и искам да го премахна (да не се показва в извлечените новини в Портала)... И тук следва тъпия въпрос - как да стане това? Благодаря предварително на всеки, който ще се отзове на помощ! Цитирай Link to comment Сподели другаде More sharing options...
Fin4agata Публикувано Юли 28, 2007 Report Share Публикувано Юли 28, 2007 Ами пиша пътя до форума обаче ми пише ERROR: the path of your forum is wrong! It isn't possible to find the config.php file. :'( Цитирай Link to comment Сподели другаде More sharing options...
Joysticka Публикувано Юли 30, 2007 Report Share Публикувано Юли 30, 2007 не пиши пътя пиши само името на папката в която е форума! Цитирай Link to comment Сподели другаде More sharing options...
vanko1990 Публикувано Октомври 8, 2007 Report Share Публикувано Октомври 8, 2007 И понеже всички гадости вървят в комплект минимум по две, та и още един проблем (поне за мен). Когато извади в Портала някоя новина, изписва името на новината, автора и като капак слага и аватара на потребителя, пуснал новината Всичко хубаво, ама тоя аватар дразни много ( ей го гада) и искам да го премахна (да не се показва в извлечените новини в Портала)... И тук следва тъпия въпрос - как да стане това? Благодаря предварително на всеки, който ще се отзове на помощ! Здрасти!И аз имах същия проблем и след много лутане и ровене успях да се справя с досадния аватар. Ето как става: В папката на МКПортала намираш файла ipb_board_functions.php : mkportal/include/IPB/ipb_board_functions.php. Отваряш този файл и търсиш функцията function get_board_news(). В нейния синтаксис търсиш следните няколко реда: $out .= " <table class=\"tabnews\" cellspacing=\"2\" cellpadding=\"2\" width=\"100%\"> <tbody> <tr> <td class=\"tdblock\" align=\"center\" width=\"5%\"> $avatar </td> <td class=\"tdblock\" valign=\"middle\" align=\"center\" width=\"95%\"> Изтриваш <td class=\"tdblock\" align=\"center\" width=\"5%\"> $avatar </td>а 95% ги правиш на 100% Колкото до таговете, пробвах една хватка, но не се получи, понеже създадените допълнително не са валидни HTML XHTML 1.0 тагове: в / mkportal / include / functions.php намерих function decode_bb($txt) и добавих текста в червено (като [abc][/abc] е създадения от мен таг): function decode_bb($txt){global $Skin;$pos = "";$mk_sub = "";$content = "";$author = "";//$txt = nl2br($txt);while ( preg_match( "#\]+)\](.+?)\[/size\]#ies", $txt ) ) {$txt = preg_replace( "#\]+)\](.+?)\[/size\]#ies" , "\$this->parse_bbfont(array('s'=>'size','1'=>'\\1','2'=>'\ \2'))", $txt );}while ( preg_match( "#\]+)\](.*?)\[/font\]#ies", $txt ) ) {$txt = preg_replace( "#\]+)\](.*?)\[/font\]#ies" , "\$this->parse_bbfont(array('s'=>'font','1'=>'\\1','2'=>'\ \2'))", $txt );}while( preg_match( "#\]+)\](.+?)\[/color\]#ies", $txt ) ) {$txt = preg_replace( "#\]+)\](.+?)\[/color\]#ies" , "\$this->parse_bbfont(array('s'=>'col' ,'1'=>'\\1','2'=>'\\2'))", $txt );}$txt = preg_replace( "#\[b\](.+?)\[/b\]#is", "<b>\\1</b>", $txt );$txt = preg_replace( "#\[i\](.+?)\[/i\]#is", "<i>\\1</i>", $txt );$txt = preg_replace( "#\[u\](.+?)\[/u\]#is", "<u>\\1</u>", $txt );$txt = preg_replace( "#\[s\](.+?)\[/s\]#is", "<s>\\1</s>", $txt );$txt = preg_replace( "#\[abc\](.+?)\[/abc\]#is", "<abc>\\1</abc>", $txt ); След като не се получи по горния начин пробвах да добавя вместо последния ред следното:$txt = preg_replace( "[abc]", "<span style=\"float : left; padding : 20px\">", $txt );$txt = preg_replace( "[/abc]", "</span>", $txt ); После пробвах и това: $txt = preg_replace( "#\[abc\](.+?)\[/abc\]#is", "<span style=\"float : left; padding : 20px\">\\1</span>", $txt ); За съжаление никой от вариантите не помогна и пост във форума, редактиран с този таг, излиза в портала, като тагът не е активен и се показва като текст. Някой да може да помогне с идея или начин на решаване на проблема? Цитирай Link to comment Сподели другаде More sharing options...
Препоръчан пост