Ver Mensaje Individual
  #9 (permalink)  
Antiguo 13/08/2009, 23:27
Charles87
 
Fecha de Ingreso: enero-2008
Ubicación: Estado de México, México
Mensajes: 476
Antigüedad: 16 años, 3 meses
Puntos: 11
Respuesta: Style para php | Acerca de plantillas de phpBB

bueno mira tu creas tus variables en php y todo lo pones en el html ejemplo:

viewtopic.php
ok de este archivo los templates se ponen con arrays en los cuales metes las variables ejemplo:

Código php:
Ver original
  1. // Send vars to template
  2. $template->assign_vars(array(
  3.     'FORUM_ID'      => $forum_id,
  4.     'FORUM_NAME'    => $topic_data['forum_name'],
  5.     'FORUM_DESC'    => generate_text_for_display($topic_data['forum_desc'], $topic_data['forum_desc_uid'], $topic_data['forum_desc_bitfield'], $topic_data['forum_desc_options']),
  6.     'TOPIC_ID'      => $topic_id,
  7.     'TOPIC_TITLE'   => $topic_data['topic_title'],
  8.     'TOPIC_POSTER'  => $topic_data['topic_poster'],
  9.  
  10.     'TOPIC_AUTHOR_FULL'     => get_username_string('full', $topic_data['topic_poster'], $topic_data['topic_first_poster_name'], $topic_data['topic_first_poster_colour']),
  11.     'TOPIC_AUTHOR_COLOUR'   => get_username_string('colour', $topic_data['topic_poster'], $topic_data['topic_first_poster_name'], $topic_data['topic_first_poster_colour']),
  12.     'TOPIC_AUTHOR'          => get_username_string('username', $topic_data['topic_poster'], $topic_data['topic_first_poster_name'], $topic_data['topic_first_poster_colour']),
  13.  
  14.     'PAGINATION'    => $pagination,
  15.     'PAGE_NUMBER'   => on_page($total_posts, $config['posts_per_page'], $start),
  16.     'TOTAL_POSTS'   => ($total_posts == 1) ? $user->lang['VIEW_TOPIC_POST'] : sprintf($user->lang['VIEW_TOPIC_POSTS'], $total_posts),
  17.     'U_MCP'         => ($auth->acl_get('m_', $forum_id)) ? append_sid("{$phpbb_root_path}mcp.$phpEx", "i=main&mode=topic_view&f=$forum_id&t=$topic_id&start=$start" . ((strlen($u_sort_param)) ? "&$u_sort_param" : ''), true, $user->session_id) : '',
  18.     'MODERATORS'    => (isset($forum_moderators[$forum_id]) && sizeof($forum_moderators[$forum_id])) ? implode(', ', $forum_moderators[$forum_id]) : '',
  19.  
  20.     'POST_IMG'          => ($topic_data['forum_status'] == ITEM_LOCKED) ? $user->img('button_topic_locked', 'FORUM_LOCKED') : $user->img('button_topic_new', 'POST_NEW_TOPIC'),
  21.     'QUOTE_IMG'         => $user->img('icon_post_quote', 'REPLY_WITH_QUOTE'),
  22.     'REPLY_IMG'         => ($topic_data['forum_status'] == ITEM_LOCKED || $topic_data['topic_status'] == ITEM_LOCKED) ? $user->img('button_topic_locked', 'TOPIC_LOCKED') : $user->img('button_topic_reply', 'REPLY_TO_TOPIC'),
  23.     'EDIT_IMG'          => $user->img('icon_post_edit', 'EDIT_POST'),
  24.     'DELETE_IMG'        => $user->img('icon_post_delete', 'DELETE_POST'),
  25.     'INFO_IMG'          => $user->img('icon_post_info', 'VIEW_INFO'),
  26.     'PROFILE_IMG'       => $user->img('icon_user_profile', 'READ_PROFILE'),
  27.     'SEARCH_IMG'        => $user->img('icon_user_search', 'SEARCH_USER_POSTS'),
  28.     'PM_IMG'            => $user->img('icon_contact_pm', 'SEND_PRIVATE_MESSAGE'),
  29.     'EMAIL_IMG'         => $user->img('icon_contact_email', 'SEND_EMAIL'),
  30.     'WWW_IMG'           => $user->img('icon_contact_www', 'VISIT_WEBSITE'),
  31.     'ICQ_IMG'           => $user->img('icon_contact_icq', 'ICQ'),
  32.     'AIM_IMG'           => $user->img('icon_contact_aim', 'AIM'),
  33.     'MSN_IMG'           => $user->img('icon_contact_msnm', 'MSNM'),
  34.     'YIM_IMG'           => $user->img('icon_contact_yahoo', 'YIM'),
  35.     'JABBER_IMG'        => $user->img('icon_contact_jabber', 'JABBER') ,
  36.     'REPORT_IMG'        => $user->img('icon_post_report', 'REPORT_POST'),
  37.     'REPORTED_IMG'      => $user->img('icon_topic_reported', 'POST_REPORTED'),
  38.     'UNAPPROVED_IMG'    => $user->img('icon_topic_unapproved', 'POST_UNAPPROVED'),
  39.     'WARN_IMG'          => $user->img('icon_user_warn', 'WARN_USER'),
  40.  
  41.     'S_IS_LOCKED'           =>($topic_data['topic_status'] == ITEM_UNLOCKED) ? false : true,
  42.     'S_SELECT_SORT_DIR'     => $s_sort_dir,
  43.     'S_SELECT_SORT_KEY'     => $s_sort_key,
  44.     'S_SELECT_SORT_DAYS'    => $s_limit_days,
  45.     'S_SINGLE_MODERATOR'    => (!empty($forum_moderators[$forum_id]) && sizeof($forum_moderators[$forum_id]) > 1) ? false : true,
  46.     'S_TOPIC_ACTION'        => append_sid("{$phpbb_root_path}viewtopic.$phpEx", "f=$forum_id&t=$topic_id&start=$start"),
  47.     'S_TOPIC_MOD'           => ($topic_mod != '') ? '<select name="action" id="quick-mod-select">' . $topic_mod . '</select>' : '',
  48.     'S_MOD_ACTION'          => append_sid("{$phpbb_root_path}mcp.$phpEx", "f=$forum_id&amp;t=$topic_id&amp;start=$start&amp;quickmod=1&amp;redirect=" . urlencode(str_replace('&amp;', '&', $viewtopic_url)), true, $user->session_id),
  49.  
  50.     'S_VIEWTOPIC'           => true,
  51.     'S_DISPLAY_SEARCHBOX'   => ($auth->acl_get('u_search') && $auth->acl_get('f_search', $forum_id) && $config['load_search']) ? true : false,
  52.     'S_SEARCHBOX_ACTION'    => append_sid("{$phpbb_root_path}search.$phpEx", 't=' . $topic_id),
  53.  
  54.     'S_DISPLAY_POST_INFO'   => ($topic_data['forum_type'] == FORUM_POST && ($auth->acl_get('f_post', $forum_id) || $user->data['user_id'] == ANONYMOUS)) ? true : false,
  55.     'S_DISPLAY_REPLY_INFO'  => ($topic_data['forum_type'] == FORUM_POST && ($auth->acl_get('f_reply', $forum_id) || $user->data['user_id'] == ANONYMOUS)) ? true : false,
  56.  
  57.     'U_TOPIC'               => "{$server_path}viewtopic.$phpEx?f=$forum_id&amp;t=$topic_id",
  58.     'U_FORUM'               => $server_path,
  59.     'U_VIEW_TOPIC'          => $viewtopic_url,
  60.     'U_VIEW_FORUM'          => append_sid("{$phpbb_root_path}viewforum.$phpEx", 'f=' . $forum_id),
  61.     'U_VIEW_OLDER_TOPIC'    => append_sid("{$phpbb_root_path}viewtopic.$phpEx", "f=$forum_id&amp;t=$topic_id&amp;view=previous"),
  62.     'U_VIEW_NEWER_TOPIC'    => append_sid("{$phpbb_root_path}viewtopic.$phpEx", "f=$forum_id&amp;t=$topic_id&amp;view=next"),
  63.     'U_PRINT_TOPIC'         => ($auth->acl_get('f_print', $forum_id)) ? $viewtopic_url . '&amp;view=print' : '',
  64.     'U_EMAIL_TOPIC'         => ($auth->acl_get('f_email', $forum_id) && $config['email_enable']) ? append_sid("{$phpbb_root_path}memberlist.$phpEx", "mode=email&amp;t=$topic_id") : '',
  65.  
  66.     'U_WATCH_TOPIC'         => $s_watching_topic['link'],
  67.     'L_WATCH_TOPIC'         => $s_watching_topic['title'],
  68.     'S_WATCHING_TOPIC'      => $s_watching_topic['is_watching'],
  69.  
  70.     'U_BOOKMARK_TOPIC'      => ($user->data['is_registered'] && $config['allow_bookmarks']) ? $viewtopic_url . '&amp;bookmark=1&amp;hash=' . generate_link_hash("topic_$topic_id") : '',
  71.     'L_BOOKMARK_TOPIC'      => ($user->data['is_registered'] && $config['allow_bookmarks'] && $topic_data['bookmarked']) ? $user->lang['BOOKMARK_TOPIC_REMOVE'] : $user->lang['BOOKMARK_TOPIC'],
  72.  
  73.     'U_POST_NEW_TOPIC'      => ($auth->acl_get('f_post', $forum_id) || $user->data['user_id'] == ANONYMOUS) ? append_sid("{$phpbb_root_path}posting.$phpEx", "mode=post&amp;f=$forum_id") : '',
  74.     'U_POST_REPLY_TOPIC'    => ($auth->acl_get('f_reply', $forum_id) || $user->data['user_id'] == ANONYMOUS) ? append_sid("{$phpbb_root_path}posting.$phpEx", "mode=reply&amp;f=$forum_id&amp;t=$topic_id") : '',
  75.     'U_BUMP_TOPIC'          => (bump_topic_allowed($forum_id, $topic_data['topic_bumped'], $topic_data['topic_last_post_time'], $topic_data['topic_poster'], $topic_data['topic_last_poster_id'])) ? append_sid("{$phpbb_root_path}posting.$phpEx", "mode=bump&amp;f=$forum_id&amp;t=$topic_id&amp;hash=" . generate_link_hash("topic_$topic_id")) : '')
  76. );

esas variables las pones en el html y se muestra en pantallas la funcion que esta despues del "=>" ahora como sabe viewtopic que debe de cargar el archivo viewtopic_body.html de la carpeta templates, facil:

Código php:
Ver original
  1. $template->set_filenames(array(
  2.     'body' => ($view == 'print') ? 'viewtopic_print.html' : 'viewtopic_body.html')
  3. );

y te preguntaras como meto las variables que mencionaste antes en el html ok aqui te dejo un ejemplo:

viewtopic.php tiene esta variable dentro de su codigo:

Código php:
Ver original
  1. 'FORUM_DESC'    => generate_text_for_display($topic_data['forum_desc'], $topic_data['forum_desc_uid'], $topic_data['forum_desc_bitfield'], $topic_data['forum_desc_options']),

y en viewtopic_body.html lo vemos asi:

Código html:
Ver original
  1. <!-- IF FORUM_DESC --><span style="display: none">{FORUM_DESC}<br /></span><!-- ENDIF -->

y bueno basicamente asi es como phpBB llama sus styles en html, alguna duda?
__________________
"Si necesitas ayuda para tu foro en phpBB solo buscanos en google como montatuforo y la obtendras"