Go Back   vb.org Archive > vBulletin 4 Discussion > vB4 Programming Discussions
  #1  
Old 03-02-2014, 07:46 PM
AndrewSimm AndrewSimm is offline
 
Join Date: Sep 2006
Location: Atlanta, GA
Posts: 222
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default registering arrays

I am working on a basic cart to integrate with paypal. I have 5 files and for the most part I can get what I want to work but not how I won't it to work. My biggest issue right now is I have to edit the layout in my functions file and I would like to have a separate template for each item block.

shopping.php - basic page that renders the template but noteworthy code is

PHP Code:
require_once(DIR.'/shopping/cis_products.php');
require_once(
DIR.'/shopping/cis_cart_functions.php');
require_once(
DIR.'/shopping/cis_block.php');

at the bottom

$templater 
vB_Template::create('cis_cart_SHELL');
$templater->register_page_templates();
$templater->register('navbar'$navbar);
$templater->register('pagetitle'$pagetitle);
$templater->register('product'$product);
print_output($templater->render()); 
cis_products.php -has 4 different arrays with 4 different ids


cis_cart_functions.php
PHP Code:
function get_list_view_html($product_id$product) {
    
$output "";

    
$output $output "<div class='cisproductblock'><div class='cisproductimage'>";
    
$output $output '<a href="/shopping/product.php?id=' $product_id '" alt="">';
    
$output $output '<img src="' $product["img"] . '"alt="' $product["name"] . '">';
    
$output $output "</div>
              <div class='cisproductname'>"
$product["name"] . "</div>
            <div class='cisproductinfo'>"
;
    
$output $output "<div class='cisproductprice'>" $product["price"] . "</div></a>";
    
$output $output " </div></div>";

    return 
$output;



cis_block.php
PHP Code:
foreach($products as $product_id => $product){ 

echo 
get_list_view_html($product_id$product);



I want to get rid of the whole output thing and edit create a vbulletin template and use the array like {vb:raw product.name) {vb:raw product.img} etc

my PHP skills aren't very good, so any help would be great!
Reply With Quote
  #2  
Old 03-03-2014, 08:08 AM
kh99 kh99 is offline
 
Join Date: Aug 2009
Location: Maine
Posts: 13,185
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

I'm not quite sure what you mean by having a separate template for each item block. But I think you want something like:
PHP Code:
function get_list_view_html($product_id$product) { 
$templater vB_Template::create('cis_cart_ITEM'); 
$templater->register('product'$product); 
$templater->register('product_id'$product_id); 
return 
$templater->render();  


Then of course you'd create the template named cis_cart_ITEM (or whatever you want to call it).
Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT. The time now is 01:34 AM.


Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2024, vBulletin Solutions Inc.
X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.03432 seconds
  • Memory Usage 2,179KB
  • Queries Executed 11 (?)
More Information
Template Usage:
  • (1)SHOWTHREAD
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (1)ad_showthread_beforeqr
  • (1)ad_showthread_firstpost
  • (1)ad_showthread_firstpost_sig
  • (1)ad_showthread_firstpost_start
  • (4)bbcode_php
  • (1)footer
  • (1)forumjump
  • (1)forumrules
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (1)navbar
  • (3)navbar_link
  • (120)option
  • (2)post_thanks_box
  • (2)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (2)post_thanks_postbit_info
  • (2)postbit
  • (2)postbit_onlinestatus
  • (2)postbit_wrapper
  • (1)spacer_close
  • (1)spacer_open
  • (1)tagbit_wrapper 

Phrase Groups Available:
  • global
  • inlinemod
  • postbit
  • posting
  • reputationlevel
  • showthread
Included Files:
  • ./showthread.php
  • ./global.php
  • ./includes/init.php
  • ./includes/class_core.php
  • ./includes/config.php
  • ./includes/functions.php
  • ./includes/class_hook.php
  • ./includes/modsystem_functions.php
  • ./includes/functions_bigthree.php
  • ./includes/class_postbit.php
  • ./includes/class_bbcode.php
  • ./includes/functions_reputation.php
  • ./includes/functions_post_thanks.php 

Hooks Called:
  • init_startup
  • init_startup_session_setup_start
  • init_startup_session_setup_complete
  • cache_permissions
  • fetch_threadinfo_query
  • fetch_threadinfo
  • fetch_foruminfo
  • style_fetch
  • cache_templates
  • global_start
  • parse_templates
  • global_setup_complete
  • showthread_start
  • showthread_getinfo
  • forumjump
  • showthread_post_start
  • showthread_query_postids
  • showthread_query
  • bbcode_fetch_tags
  • bbcode_create
  • showthread_postbit_create
  • postbit_factory
  • postbit_display_start
  • post_thanks_function_post_thanks_off_start
  • post_thanks_function_post_thanks_off_end
  • post_thanks_function_fetch_thanks_start
  • post_thanks_function_fetch_thanks_end
  • post_thanks_function_thanked_already_start
  • post_thanks_function_thanked_already_end
  • fetch_musername
  • postbit_imicons
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • postbit_display_complete
  • post_thanks_function_can_thank_this_post_start
  • tag_fetchbit_complete
  • forumrules
  • navbits
  • navbits_complete
  • showthread_complete