سلام ، آیا این بازدید اول شماست ؟ یا
صفحه 1 از 2 12 آخرینآخرین
نمایش نتایج: از شماره 1 تا 10 , از مجموع 16

موضوع: فونت و لينك در ويرچومارت

Hybrid View

پست قبلی پست قبلی   پست بعدی پست بعدی
  1. #1

    تاریخ عضویت
    Dec 2009
    نوشته ها
    63
    تشکر
    0
    تشکر شده 0 بار در 0 ارسال

    فونت و لينك در ويرچومارت

    با سلام مي خواستم ببينم اندازه فونتها را در ويرچومارت چگونه ميشه تغيير داد مثلا قيمت يا عنوان كالا و اينكه وقتي روي يك كالا كليك مي كنيم چگونه _blank باز شود . ممنون

    جهت مشاهده لینک ها باید ثبت نام کنید یا لاگین کنید.


  2. # ADS
    تبلیغات در جوملا فارسی
    تاریخ عضویت
    Always
    نوشته ها
    Many
     

  3. #2
    Admin
    تاریخ عضویت
    Dec 2005
    محل سکونت
    U.A.E
    نوشته ها
    13,222
    تشکر
    318
    تشکر شده 1,338 بار در 652 ارسال

    پاسخ : فونت و لينك در ويرچومارت

    سلام

    باید چک کنید ببینید این قسمت از چه کلاسی در css استفاده میکنه.
    بعد از فهمیدن این موضوع میتونید سایز فونت را افزایش بدید

    برای باز شدن لینک ها در صفحه جدید از
    کد:
    target="_blank"
    استفاده کنید ( البته باید کد ها را ویرایش کنید . )

    یا علی

    جهت مشاهده لینک ها باید ثبت نام کنید یا لاگین کنید.


  4. #3

    تاریخ عضویت
    Dec 2009
    نوشته ها
    63
    تشکر
    0
    تشکر شده 0 بار در 0 ارسال

    پاسخ : فونت و لينك در ويرچومارت

    با سلام مجدد من مي خواستم در صفحه اصلي ويرچومارت در سايت كه همه محصولات وجود دارد براي رفتن به جزئيات محصولات وقتي روي آن كليك مي كنيم در يك صفحه جديد باز بشه (_blank) .ممنون

    لطفا اگر کسی میتونه کمک کنه . ممنون


    ** دو پست شما یکی شد

    جهت مشاهده لینک ها باید ثبت نام کنید یا لاگین کنید.


  5. #4

    تاریخ عضویت
    Jun 2009
    محل سکونت
    Kuala Lumpur
    نوشته ها
    2,440
    تشکر
    0
    تشکر شده 16 بار در 16 ارسال

    پاسخ : فونت و لينك در ويرچومارت

    سلام

    آدرس سایتتون رو لطف کنید تا برای تغییر سایز فونت راهنماییتون کنم.
    مورد دوم نیاز به ویرایش کدها داره.


    یا علی

    جهت مشاهده لینک ها باید ثبت نام کنید یا لاگین کنید.


  6. #5

    تاریخ عضویت
    Dec 2009
    نوشته ها
    63
    تشکر
    0
    تشکر شده 0 بار در 0 ارسال

    پاسخ : فونت و لينك در ويرچومارت

    با سلام فونت رو درست کردم اگه ممکن است برای مورد دوم توضیح بدید . ممنون

    جهت مشاهده لینک ها باید ثبت نام کنید یا لاگین کنید.


  7. #6

    تاریخ عضویت
    Jun 2009
    محل سکونت
    Kuala Lumpur
    نوشته ها
    2,440
    تشکر
    0
    تشکر شده 16 بار در 16 ارسال

    پاسخ : فونت و لينك در ويرچومارت

    سلام

    شما باید فایل php که حاوی کدهای سازنده ی صفحه ی نمایش محصولات هستند رو در پوشه ی کامپوننت پیدا کنید و سپس در فایل بدنبال دستوری که لینک محصولات رو میسازه بگردید و به تگ <a> مقدار target="_blank" رو اضافه کنید.


    یا علی

    جهت مشاهده لینک ها باید ثبت نام کنید یا لاگین کنید.


  8. #7

    تاریخ عضویت
    Dec 2009
    نوشته ها
    63
    تشکر
    0
    تشکر شده 0 بار در 0 ارسال

    پاسخ : فونت و لينك در ويرچومارت

    با سلام هر کجا که می گذارم جواب نمیده اینم کدش . ببخشید مزاحم میشم
    کد:
    <?php 
    if( !defined( '_VALID_MOS' ) && !defined( '_JEXEC' ) ) die( 'Direct Access to '.basename(__FILE__).' is not allowed.' );
    /**
    *
    * @version $Id: shop.product_details.php 1839 2009-06-29 20:25:44Z soeren_nb $
    * @package VirtueMart
    * @subpackage html
    * @copyright Copyright (C) 2004-2009 soeren - All rights reserved.
    * @license [مهمان/کاربر گرامی برای دیدن لینک ها ابتدا باید عضو سایت شوید و لاگین کنید برای ثبت نام اینجا کلیک کنید] GNU/GPL, see LICENSE.php
    * VirtueMart is free software. This version may have been modified pursuant
    * to the GNU General Public License, and as distributed it includes or
    * is derivative of works licensed under the GNU General Public License or
    * other free or open source software licenses.
    * See /administrator/components/com_virtuemart/COPYRIGHT.php for copyright notices and details.
    *
    * [مهمان/کاربر گرامی برای دیدن لینک ها ابتدا باید عضو سایت شوید و لاگین کنید برای ثبت نام اینجا کلیک کنید]
    */
    mm_showMyFileName( __FILE__ );
    
    require_once(CLASSPATH . 'ps_product_files.php' );
    require_once(CLASSPATH . 'imageTools.class.php' );
    require_once(CLASSPATH . 'ps_product.php' );
    $ps_product = $GLOBALS['ps_product'] = new ps_product;
    
    require_once(CLASSPATH . 'ps_product_category.php' );
    $ps_product_category = new ps_product_category;
    
    require_once(CLASSPATH . 'ps_product_attribute.php' );
    $ps_product_attribute = new ps_product_attribute;
    
    require_once(CLASSPATH . 'ps_product_type.php' );
    $ps_product_type = new ps_product_type;
    require_once(CLASSPATH . 'ps_reviews.php' );
    
    $product_id = intval( vmGet($_REQUEST, "product_id", null) );
    $product_sku = $db->getEscaped( vmGet($_REQUEST, "sku", '' ) );
    $category_id = vmGet($_REQUEST, "category_id", null);
    $pop = (int)vmGet($_REQUEST, "pop", 0);
    $manufacturer_id = vmGet($_REQUEST, "manufacturer_id", null);
    $Itemid = $sess->getShopItemid();
    $db_product = new ps_DB;
    
    // Get the product info from the database
    $q = "SELECT * FROM `#__{vm}_product` WHERE ";
    if( !empty($product_id)) {
    	$q .= "`product_id`=$product_id";
    }
    elseif( !empty($product_sku )) {
    	$q .= "`product_sku`='$product_sku'";
    }
    else {
    	vmRedirect( $sess->url( $_SERVER['PHP_SELF']."?keyword=".urlencode($keyword)."&category_id={$_SESSION['session_userstate']['category_id']}&limitstart={$_SESSION['limitstart']}&page=shop.browse", false, false ), $VM_LANG->_('PHPSHOP_PRODUCT_NOT_FOUND') );
    }
    
    if( !$perm->check("admin,storeadmin") ) {
    	$q .= " AND `product_publish`='Y'";
    	if( CHECK_STOCK && PSHOP_SHOW_OUT_OF_STOCK_PRODUCTS != "1") {
    		$q .= " AND `product_in_stock` > 0 ";
    	}
    }
    $db_product->query( $q );
    
    // Redirect back to Product Browse Page on Error
    if( !$db_product->next_record() ) {
    	$vmLogger->err( $VM_LANG->_('PHPSHOP_PRODUCT_NOT_FOUND',false) );
    	return;
    }
    if( empty($product_id)) {
    	$product_id = $db_product->f('product_id');
    }
    $product_parent_id = (int)$db_product->f("product_parent_id");
    if ($product_parent_id != 0) {
    	$dbp= new ps_DB;
    	$dbp->query('SELECT * FROM `#__{vm}_product` WHERE `product_id`='.$product_parent_id );
    	$dbp->next_record();
    }
    
    // Create the template object
    $tpl = vmTemplate::getInstance();
    
    
    // Let's have a look wether the product has related products.
    $q = "SELECT product_sku, related_products FROM #__{vm}_product,#__{vm}_product_relations ";
    $q .= "WHERE #__{vm}_product_relations.product_id='$product_id' AND product_publish='Y' ";
    $q .= "AND FIND_IN_SET(#__{vm}_product.product_id, REPLACE(related_products, '|', ',' )) LIMIT 0, 4";
    $db->query( $q );
    /*// This shows randomly selected products from the products table
    // if you don't like to set up related products for each product
    $q = "SELECT product_sku FROM #__{vm}_product ";
    $q .= "WHERE product_publish='Y' AND product_id != $product_id ";
    $q .= "ORDER BY RAND() LIMIT 0, 4";
    $db->query( $q );*/
    $related_products = '';
    if( $db->num_rows() > 0 ) {
    	$tpl->set( 'ps_product', $ps_product );
    	$tpl->set( 'products', $db );
    	$related_products = $tpl->fetch( '/common/relatedProducts.tpl.php' );
    }
    
    // GET THE PRODUCT NAME 
    $product_name = shopMakeHtmlSafe( $db_product->f("product_name") );
    if( $db_product->f("product_publish") == "N" ) {
    	$product_name .= " (".$VM_LANG->_('CMN_UNPUBLISHED').")";
    }
    $product_description = $db_product->f("product_desc");
    if( (str_replace("<br />", "" , $product_description)=='') && ($product_parent_id!=0) ) {
    	$product_description = $dbp->f("product_desc"); // Use product_desc from Parent Product
    }
    $product_description = vmCommonHTML::ParseContentByPlugins( $product_description );
    
    // Get the CATEGORY NAVIGATION 
    $navigation_pathway = "";
    $navigation_childlist = "";
    $pathway_appended = false;
    
    $flypage = vmGet($_REQUEST, "flypage" );
    
    // Each Product is assigned to one or more Categories, if category_id was omitted, we must fetch it here
    if (empty($category_id) || empty( $flypage )) {
    	$q = "SELECT cx.category_id, category_flypage FROM #__{vm}_category c, #__{vm}_product_category_xref cx WHERE product_id = '$product_id' AND c.category_id=cx.category_id LIMIT 0,1";
    	$db->query( $q );
    	$db->next_record();
    	if( !$db->f("category_id") ) {
    		// The Product Has no category entry and must be a Child Product
    		// So let's get the Parent Product
    		$q = "SELECT product_id FROM #__{vm}_product WHERE product_id = '".$db_product->f("product_parent_id")."' LIMIT 0,1";
    		$db->query( $q );
    		$db->next_record();
    
    		$q = "SELECT cx.category_id, category_flypage FROM #__{vm}_category c, #__{vm}_product_category_xref cx WHERE product_id = '".$db->f("product_id")."' AND c.category_id=cx.category_id LIMIT 0,1";
    		$db->query( $q );
    		$db->next_record();
    	}
    	$_GET['category_id'] = $category_id = $db->f("category_id");
    }
    
    if( empty( $flypage )) {
    	$flypage = $db->f('category_flypage') ? $db->f('category_flypage') : FLYPAGE;
    }
    // Flypage Parameter has old page syntax: shop.flypage
    // so let's get the second part - flypage
    $flypage = str_replace( 'shop.', '', $flypage);
    $flypage = stristr( $flypage, '.tpl') ? $flypage : $flypage . '.tpl';
    
    // Set up the pathway
    // Retrieve the pathway items for this product's category
    $category_list = array_reverse( $ps_product_category->get_navigation_list( $category_id ) );
    $pathway = $ps_product_category->getPathway( $category_list );
    
    // Add this product's name to the pathway, with no link
    $item = new stdClass();
    $item->name = $product_name;
    $item->link = '';
    $pathway[] = $item;
    
    // Set the CMS pathway
    $vm_mainframe->vmAppendPathway( $pathway );
    
    // Set the pathway for our template
    $tpl->set( 'pathway', $pathway );
    
    $tpl->set( 'product_name', $product_name );
    
    // Get the neighbor Products to allow navigation on product level
    $neighbors = $ps_product->get_neighbor_products( !empty( $product_parent_id ) ? $product_parent_id : $product_id );
    $next_product = $neighbors['next'];
    $previous_product = $neighbors['previous'];
    $next_product_url = $previous_product_url = '';
    if( !empty($next_product) ) {
    	$url_parameters = 'page=shop.product_details&product_id='.$next_product['product_id'].'&flypage='.$ps_product->get_flypage($next_product['product_id']).'&pop='.$pop;
      if( $manufacturer_id ) {
      	$url_parameters .= "&manufacturer_id=" . $manufacturer_id;
      }
      if( $keyword != '') {
      	$url_parameters .= "&keyword=".urlencode($keyword);
      }
    	if( $pop == 1 ) {
    		$next_product_url = $sess->url( $_SERVER['PHP_SELF'].'?'.$url_parameters );
    	} else {
    		$next_product_url = str_replace("index2","index",$sess->url( $url_parameters ));
    	}
    }
    if( !empty($previous_product) ) {
    	$url_parameters = 'page=shop.product_details&product_id='.$previous_product['product_id'].'&flypage='.$ps_product->get_flypage($previous_product['product_id']).'&pop='.$pop;
      if( $manufacturer_id ) {
      	$url_parameters .= "&manufacturer_id=" . $manufacturer_id;
      }
      if( $keyword != '') {
      	$url_parameters .= "&keyword=".urlencode($keyword);
      }
    	if( $pop == 1 ) {
    		$previous_product_url = $sess->url( $_SERVER['PHP_SELF'].'?'.$url_parameters );
    	} else {
    		$previous_product_url = str_replace("index2","index",$sess->url( $url_parameters ));
    	}
    }
    
    $tpl->set( 'next_product', $next_product );
    $tpl->set( 'next_product_url', $next_product_url );
    $tpl->set( 'previous_product', $previous_product );
    $tpl->set( 'previous_product_url', $previous_product_url );
    
    $parent_id_link = $db_product->f("product_parent_id");
    $return_link = "";
    if ($parent_id_link <> 0 ) {
    	$q = "SELECT product_name FROM #__{vm}_product WHERE product_id = '$product_parent_id' LIMIT 0,1";
    	$db->query( $q );
    	$db->next_record();
    	$product_parent_name = $db->f("product_name");
    	$return_link = " <a class=\"pathway\" href=\"";
    	$return_link .= $sess->url($_SERVER['PHP_SELF'] . "?page=shop.product_details&product_id=$parent_id_link");
    	$return_link .= "\">";
    	$return_link .= $product_parent_name;
    	$return_link .= "</a>";
    	$return_link .= " ".vmCommonHTML::pathway_separator()." ";
    }
    $tpl->set( 'return_link', $return_link );
    
    // Create the pathway for our template
    $navigation_pathway = $tpl->fetch( 'common/pathway.tpl.php');
    
    if ($ps_product_category->has_childs($category_id) ) {
    	$category_childs = $ps_product_category->get_child_list($category_id);
    	$tpl->set( 'categories', $category_childs );
    	$navigation_childlist = $tpl->fetch( 'common/categoryChildlist.tpl.php');
    }
    
    // Set Dynamic Page Title
    if( function_exists('mb_substr')) {
    	$page_title = mb_substr($product_name, 0, 64, vmGetCharset() );
    } else {
    	$page_title = substr($product_name, 0, 64 );
    	
    }
    $vm_mainframe->setPageTitle( html_entity_decode( $page_title, ENT_QUOTES, vmGetCharset() ));
    
    // Prepend Product Short Description Meta Tag "description"
    if( vmIsJoomla('1.5')) {
    	$document = JFactory::getDocument();
    	$document->setDescription(strip_tags( $db_product->f("product_s_desc")));
    } else {
    	$mainframe->prependMetaTag( "description", strip_tags( $db_product->f("product_s_desc")) );
    }
    
    
    // Show an "Edit PRODUCT"-Link
    if ($perm->check("admin,storeadmin")) {
    	$edit_link = '<a href="'. $sess->url( 'index2.php?page=product.product_form&next_page=shop.product_details&product_id='.$product_id).'">
       <img src="images/M_images/edit.png" alt="'. $VM_LANG->_('PHPSHOP_PRODUCT_FORM_EDIT_PRODUCT') .'" border="0" /></a>';
    }
    else {
    	$edit_link = "";
    }
    
    // LINK TO MANUFACTURER POP-UP
    $manufacturer_id = $ps_product->get_manufacturer_id($product_id);
    $manufacturer_name = $ps_product->get_mf_name($product_id);
    $manufacturer_link = "";
    if( $manufacturer_id && !empty($manufacturer_name) ) {
    	$link = "$mosConfig_live_site/index2.php?page=shop.manufacturer_page&manufacturer_id=$manufacturer_id&output=lite&option=com_virtuemart&Itemid=".$Itemid;
    	$text = '( '.$manufacturer_name.' )';
    	$manufacturer_link .= vmPopupLink( $link, $text );
    
    	// Avoid JavaScript on PDF Output
    	if( @$_REQUEST['output'] == "pdf" )
    	$manufacturer_link = "<a href=\"$link\" target=\"_blank\" title=\"$text\">$text</a>";
    }
    // PRODUCT PRICE
    if (_SHOW_PRICES == '1') { 
    	if( $db_product->f("product_unit") && VM_PRICE_SHOW_PACKAGING_PRICELABEL) {
    		$product_price_lbl = "<strong>". $VM_LANG->_('PHPSHOP_CART_PRICE_PER_UNIT').' ('.$db_product->f("product_unit")."):</strong>";
    	}
    	else {
    		$product_price_lbl = "<strong>". $VM_LANG->_('PHPSHOP_CART_PRICE'). ": </strong>";
    	}
    	$product_price = $ps_product->show_price( $product_id );
    }
    else {
    	$product_price_lbl = "";
    	$product_price = "";
    }
    // @var array $product_price_raw The raw unformatted Product Price in Float Format
    $product_price_raw = $ps_product->get_adjusted_attribute_price($product_id);
    		
    // Change Packaging - Begin
    // PRODUCT PACKAGING
    if ( $db_product->f("product_packaging") ) {
    	$packaging = $db_product->f("product_packaging") & 0xFFFF;
    	$box = ($db_product->f("product_packaging") >> 16) & 0xFFFF;
    	$product_packaging = "";
    	if ( $packaging ) {
    		$product_packaging .= $VM_LANG->_('PHPSHOP_PRODUCT_PACKAGING1').$packaging;
    		if( $box ) $product_packaging .= "<br/>";
    	}
    	if ( $box ) {
    		$product_packaging .= $VM_LANG->_('PHPSHOP_PRODUCT_PACKAGING2').$box;
    	}
    
    	$product_packaging = str_replace("{unit}",$db_product->f("product_unit")?$db_product->f("product_unit") : $VM_LANG->_('PHPSHOP_PRODUCT_FORM_UNIT_DEFAULT'),$product_packaging);
    }
    else {
    	$product_packaging = "";
    }
    // Change Packaging - End
    
    // PRODUCT IMAGE
    $product_full_image = $product_parent_id!=0 && !$db_product->f("product_full_image") ?
    $dbp->f("product_full_image") : $db_product->f("product_full_image"); // Change
    $product_thumb_image = $product_parent_id!=0 && !$db_product->f("product_thumb_image") ?
    $dbp->f("product_thumb_image") : $db_product->f("product_thumb_image"); // Change
    
    /* MORE IMAGES ??? */
    $files = ps_product_files::getFilesForProduct( $product_id );
    
    $more_images = "";
    if( !empty($files['images']) ) {
    	$more_images = $tpl->vmMoreImagesLink( $files['images'] );
    }
    // Does the Product have files?
    $file_list = ps_product_files::get_file_list( $files['product_id'] );
    
    $product_availability = '';
    
    if( @$_REQUEST['output'] != "pdf" ) {
    	// Show the PDF, Email and Print buttons
    	
    
    	// AVAILABILITY 
    	// This is the place where it shows: Availability: 24h, In Stock: 5 etc.
    	// You can make changes to this functionality in the file: classes/ps_product.php
    	$product_availability = $ps_product->get_availability($product_id);
    }
    $product_availability_data = $ps_product->get_availability_data($product_id);
    
    /** Ask seller a question **/
    $ask_seller_href = $sess->url( $_SERVER ['PHP_SELF'].'?page=shop.ask&flypage='.@$_REQUEST['flypage']."&product_id=$product_id&category_id=$category_id" );
    $ask_seller_text = $VM_LANG->_('VM_PRODUCT_ENQUIRY_LBL');
    $ask_seller = '<a class="button" href="'. $ask_seller_href .'">'. $ask_seller_text .'</a>';
    
    /* SHOW RATING */
    $product_rating = "";
    if (PSHOP_ALLOW_REVIEWS == '1') {
    	$product_rating = ps_reviews::allvotes( $product_id );
    }
    
    $product_reviews = $product_reviewform = "";
    /* LIST ALL REVIEWS **/
    if (PSHOP_ALLOW_REVIEWS == '1') {
    	/*** Show all reviews available ***/
    	$product_reviews = ps_reviews::product_reviews( $product_id );
    	/*** Show a form for writing a review ***/
    
    	if( $auth['user_id'] > 0 ) {
    		$product_reviewform = ps_reviews::reviewform( $product_id );
    	}
    }
    
    /* LINK TO VENDOR-INFO POP-UP **/
    $vend_id = $ps_product->get_vendor_id($product_id);
    $vend_name = $ps_product->get_vendorname($product_id);
    
    $link = "$mosConfig_live_site/index2.php?page=shop.infopage&vendor_id=$vend_id&output=lite&option=com_virtuemart&Itemid=".$Itemid;
    $text = $VM_LANG->_('PHPSHOP_VENDOR_FORM_INFO_LBL');
    $vendor_link = vmPopupLink( $link, $text );
    
    // Avoid JavaScript on PDF Output
    if( @$_REQUEST['output'] == "pdf" )
    $vendor_link = "<a href=\"$link\" target=\"_blank\" title=\"$text\">$text</a>";
    
    if ($product_parent_id!=0 && !$ps_product_type->product_in_product_type($product_id)) {
    	$product_type = $ps_product_type->list_product_type($product_parent_id);
    }
    else {
    	$product_type = $ps_product_type->list_product_type($product_id);
    }
    
    
    
    /**
    * This has changed since VM 1.1.0 
    * Now we have a template object that can use all variables 
    * that we assign here.
    * 
    * Example: If you run
    * $tpl->set( "product_name", $product_name );
    * The variable "product_name" will be available in the template under this name
    * with the value of $product_name
    * 
    * */
    
    // This part allows us to copy ALL properties from the product table
    // into the template
    $productData = $db_product->get_row();
    $productArray = get_object_vars( $productData );
    
    $productArray["product_id"] = $product_id;
    $productArray["product_full_image"] = $product_full_image; // to display the full image on flypage
    $productArray["product_thumb_image"] = $product_thumb_image;
    $productArray["product_name"] = shopMakeHtmlSafe($productArray["product_name"]);
    
    $tpl->set( 'productArray', $productArray );
    foreach( $productArray as $property => $value ) {
    	$tpl->set( $property, $value);
    }
    // Assemble the thumbnail image as a link to the full image
    // This function is defined in the theme (theme.php)
    $product_image = $tpl->vmBuildFullImageLink( $productArray );
    
    $tpl->set( "product_id", $product_id );
    $tpl->set( "product_name", $product_name );
    $tpl->set( "product_image", $product_image );
    $tpl->set( "more_images", $more_images );
    $tpl->set( "images", $files['images'] );
    $tpl->set( "files", $files['files'] );
    $tpl->set( "file_list", $file_list );
    $tpl->set( "edit_link", $edit_link );
    $tpl->set( "manufacturer_link", $manufacturer_link );
    $tpl->set( "product_price", $product_price );
    $tpl->set( "product_price_lbl", $product_price_lbl );
    $tpl->set( 'product_price_raw', $product_price_raw );
    $tpl->set( "product_description", $product_description );
    
    /* ADD-TO-CART */
    $tpl->set( 'manufacturer_id', $manufacturer_id );
    $tpl->set( 'flypage', $flypage );
    $tpl->set( 'ps_product_attribute', $ps_product_attribute );
    $addtocart = $tpl->fetch('product_details/includes/addtocart_form.tpl.php' );
    
    $tpl->set( "addtocart", $addtocart );
    // Those come from separate template files
    $tpl->set( "navigation_pathway", $navigation_pathway );
    $tpl->set( "navigation_childlist", $navigation_childlist );
    $tpl->set( "product_reviews", $product_reviews );
    $tpl->set( "product_reviewform", $product_reviewform );
    $tpl->set( "product_availability", $product_availability );
    $tpl->set( "product_availability_data", $product_availability_data );
    
    $tpl->set( "related_products", $related_products );
    $tpl->set( "vendor_link", $vendor_link );
    $tpl->set( "product_type", $product_type ); // Changed Product Type
    $tpl->set( "product_packaging", $product_packaging ); // Changed Packaging
    $tpl->set( "ask_seller_href", $ask_seller_href ); // Product Enquiry!
    $tpl->set( "ask_seller_text", $ask_seller_text ); // Product Enquiry!
    $tpl->set( "ask_seller", $ask_seller ); // Product Enquiry!
    $tpl->set( "recent_products", $recent_products); // Recent products
    /* Finish and Print out the Page */
    echo $tpl->fetch( '/product_details/'.$flypage . '.php' );
    
    ?>
    ** تگ کد اضافه شد

    جهت مشاهده لینک ها باید ثبت نام کنید یا لاگین کنید.


  9. #8

    تاریخ عضویت
    Jun 2009
    محل سکونت
    Kuala Lumpur
    نوشته ها
    2,440
    تشکر
    0
    تشکر شده 16 بار در 16 ارسال

    پاسخ : فونت و لينك در ويرچومارت

    سلام

    کد زیر رو جایگزین کنید ببینید مشکل حل میشه یا خیر:

    کد:
    <?php
    if( !defined( '_VALID_MOS' ) && !defined( '_JEXEC' ) ) die( 'Direct Access to '.basename(__FILE__).' is not allowed.' );
    /**
    *
    * @version $Id: shop.product_details.php 1839 2009-06-29 20:25:44Z soeren_nb $
    * @package VirtueMart
    * @subpackage html
    * @copyright Copyright (C) 2004-2009 soeren - All rights reserved.
    * @license [مهمان/کاربر گرامی برای دیدن لینک ها ابتدا باید عضو سایت شوید و لاگین کنید برای ثبت نام اینجا کلیک کنید] GNU/GPL, see LICENSE.php
    * VirtueMart is free software. This version may have been modified pursuant
    * to the GNU General Public License, and as distributed it includes or
    * is derivative of works licensed under the GNU General Public License or
    * other free or open source software licenses.
    * See /administrator/components/com_virtuemart/COPYRIGHT.php for copyright notices and details.
    *
    * [مهمان/کاربر گرامی برای دیدن لینک ها ابتدا باید عضو سایت شوید و لاگین کنید برای ثبت نام اینجا کلیک کنید]
    */
    mm_showMyFileName( __FILE__ );
    
    require_once(CLASSPATH . 'ps_product_files.php' );
    require_once(CLASSPATH . 'imageTools.class.php' );
    require_once(CLASSPATH . 'ps_product.php' );
    $ps_product = $GLOBALS['ps_product'] = new ps_product;
    
    require_once(CLASSPATH . 'ps_product_category.php' );
    $ps_product_category = new ps_product_category;
    
    require_once(CLASSPATH . 'ps_product_attribute.php' );
    $ps_product_attribute = new ps_product_attribute;
    
    require_once(CLASSPATH . 'ps_product_type.php' );
    $ps_product_type = new ps_product_type;
    require_once(CLASSPATH . 'ps_reviews.php' );
    
    $product_id = intval( vmGet($_REQUEST, "product_id", null) );
    $product_sku = $db->getEscaped( vmGet($_REQUEST, "sku", '' ) );
    $category_id = vmGet($_REQUEST, "category_id", null);
    $pop = (int)vmGet($_REQUEST, "pop", 0);
    $manufacturer_id = vmGet($_REQUEST, "manufacturer_id", null);
    $Itemid = $sess->getShopItemid();
    $db_product = new ps_DB;
    
    // Get the product info from the database
    $q = "SELECT * FROM `#__{vm}_product` WHERE ";
    if( !empty($product_id)) {
      $q .= "`product_id`=$product_id";
    }
    elseif( !empty($product_sku )) {
      $q .= "`product_sku`='$product_sku'";
    }
    else {
      vmRedirect( $sess->url( $_SERVER['PHP_SELF']."?keyword=".urlencode($keyword)."&category_id={$_SESSION['session_userstate']['category_id']}&limitstart={$_SESSION['limitstart']}&page=shop.browse", false, false ), $VM_LANG->_('PHPSHOP_PRODUCT_NOT_FOUND') );
    }
    
    if( !$perm->check("admin,storeadmin") ) {
      $q .= " AND `product_publish`='Y'";
      if( CHECK_STOCK && PSHOP_SHOW_OUT_OF_STOCK_PRODUCTS != "1") {
       $q .= " AND `product_in_stock` > 0 ";
      }
    }
    $db_product->query( $q );
    
    // Redirect back to Product Browse Page on Error
    if( !$db_product->next_record() ) {
      $vmLogger->err( $VM_LANG->_('PHPSHOP_PRODUCT_NOT_FOUND',false) );
      return;
    }
    if( empty($product_id)) {
      $product_id = $db_product->f('product_id');
    }
    $product_parent_id = (int)$db_product->f("product_parent_id");
    if ($product_parent_id != 0) {
      $dbp= new ps_DB;
      $dbp->query('SELECT * FROM `#__{vm}_product` WHERE `product_id`='.$product_parent_id );
      $dbp->next_record();
    }
    
    // Create the template object
    $tpl = vmTemplate::getInstance();
    
    
    // Let's have a look wether the product has related products.
    $q = "SELECT product_sku, related_products FROM #__{vm}_product,#__{vm}_product_relations ";
    $q .= "WHERE #__{vm}_product_relations.product_id='$product_id' AND product_publish='Y' ";
    $q .= "AND FIND_IN_SET(#__{vm}_product.product_id, REPLACE(related_products, '|', ',' )) LIMIT 0, 4";
    $db->query( $q );
    /*// This shows randomly selected products from the products table
    // if you don't like to set up related products for each product
    $q = "SELECT product_sku FROM #__{vm}_product ";
    $q .= "WHERE product_publish='Y' AND product_id != $product_id ";
    $q .= "ORDER BY RAND() LIMIT 0, 4";
    $db->query( $q );*/
    $related_products = '';
    if( $db->num_rows() > 0 ) {
      $tpl->set( 'ps_product', $ps_product );
      $tpl->set( 'products', $db );
      $related_products = $tpl->fetch( '/common/relatedProducts.tpl.php' );
    }
    
    // GET THE PRODUCT NAME
    $product_name = shopMakeHtmlSafe( $db_product->f("product_name") );
    if( $db_product->f("product_publish") == "N" ) {
      $product_name .= " (".$VM_LANG->_('CMN_UNPUBLISHED').")";
    }
    $product_description = $db_product->f("product_desc");
    if( (str_replace("<br />", "" , $product_description)=='') && ($product_parent_id!=0) ) {
      $product_description = $dbp->f("product_desc"); // Use product_desc from Parent Product
    }
    $product_description = vmCommonHTML::ParseContentByPlugins( $product_description );
    
    // Get the CATEGORY NAVIGATION
    $navigation_pathway = "";
    $navigation_childlist = "";
    $pathway_appended = false;
    
    $flypage = vmGet($_REQUEST, "flypage" );
    
    // Each Product is assigned to one or more Categories, if category_id was omitted, we must fetch it here
    if (empty($category_id) || empty( $flypage )) {
      $q = "SELECT cx.category_id, category_flypage FROM #__{vm}_category c, #__{vm}_product_category_xref cx WHERE product_id = '$product_id' AND c.category_id=cx.category_id LIMIT 0,1";
      $db->query( $q );
      $db->next_record();
      if( !$db->f("category_id") ) {
       // The Product Has no category entry and must be a Child Product
       // So let's get the Parent Product
       $q = "SELECT product_id FROM #__{vm}_product WHERE product_id = '".$db_product->f("product_parent_id")."' LIMIT 0,1";
       $db->query( $q );
       $db->next_record();
    
       $q = "SELECT cx.category_id, category_flypage FROM #__{vm}_category c, #__{vm}_product_category_xref cx WHERE product_id = '".$db->f("product_id")."' AND c.category_id=cx.category_id LIMIT 0,1";
       $db->query( $q );
       $db->next_record();
      }
      $_GET['category_id'] = $category_id = $db->f("category_id");
    }
    
    if( empty( $flypage )) {
      $flypage = $db->f('category_flypage') ? $db->f('category_flypage') : FLYPAGE;
    }
    // Flypage Parameter has old page syntax: shop.flypage
    // so let's get the second part - flypage
    $flypage = str_replace( 'shop.', '', $flypage);
    $flypage = stristr( $flypage, '.tpl') ? $flypage : $flypage . '.tpl';
    
    // Set up the pathway
    // Retrieve the pathway items for this product's category
    $category_list = array_reverse( $ps_product_category->get_navigation_list( $category_id ) );
    $pathway = $ps_product_category->getPathway( $category_list );
    
    // Add this product's name to the pathway, with no link
    $item = new stdClass();
    $item->name = $product_name;
    $item->link = '';
    $pathway[] = $item;
    
    // Set the CMS pathway
    $vm_mainframe->vmAppendPathway( $pathway );
    
    // Set the pathway for our template
    $tpl->set( 'pathway', $pathway );
    
    $tpl->set( 'product_name', $product_name );
    
    // Get the neighbor Products to allow navigation on product level
    $neighbors = $ps_product->get_neighbor_products( !empty( $product_parent_id ) ? $product_parent_id : $product_id );
    $next_product = $neighbors['next'];
    $previous_product = $neighbors['previous'];
    $next_product_url = $previous_product_url = '';
    if( !empty($next_product) ) {
      $url_parameters = 'page=shop.product_details&product_id='.$next_product['product_id'].'&flypage='.$ps_product->get_flypage($next_product['product_id']).'&pop='.$pop;
      if( $manufacturer_id ) {
        $url_parameters .= "&manufacturer_id=" . $manufacturer_id;
      }
      if( $keyword != '') {
        $url_parameters .= "&keyword=".urlencode($keyword);
      }
      if( $pop == 1 ) {
       $next_product_url = $sess->url( $_SERVER['PHP_SELF'].'?'.$url_parameters );
      } else {
       $next_product_url = str_replace("index2","index",$sess->url( $url_parameters ));
      }
    }
    if( !empty($previous_product) ) {
      $url_parameters = 'page=shop.product_details&product_id='.$previous_product['product_id'].'&flypage='.$ps_product->get_flypage($previous_product['product_id']).'&pop='.$pop;
      if( $manufacturer_id ) {
        $url_parameters .= "&manufacturer_id=" . $manufacturer_id;
      }
      if( $keyword != '') {
        $url_parameters .= "&keyword=".urlencode($keyword);
      }
      if( $pop == 1 ) {
       $previous_product_url = $sess->url( $_SERVER['PHP_SELF'].'?'.$url_parameters );
      } else {
       $previous_product_url = str_replace("index2","index",$sess->url( $url_parameters ));
      }
    }
    
    
    $tpl->set( 'next_product', $next_product );
    $tpl->set( 'next_product_url', $next_product_url );
    $tpl->set( 'previous_product', $previous_product );
    $tpl->set( 'previous_product_url', $previous_product_url );
    
    $parent_id_link = $db_product->f("product_parent_id");
    $return_link = "";
    if ($parent_id_link <> 0 ) {
      $q = "SELECT product_name FROM #__{vm}_product WHERE product_id = '$product_parent_id' LIMIT 0,1";
      $db->query( $q );
      $db->next_record();
      $product_parent_name = $db->f("product_name");
      $return_link = " <a class=\"pathway\" href=\"";
      $return_link .= $sess->url($_SERVER['PHP_SELF'] . "?page=shop.product_details&product_id=$parent_id_link");
      $return_link .= "\">";
      $return_link .= $product_parent_name;
      $return_link .= "</a>";
      $return_link .= " ".vmCommonHTML::pathway_separator()." ";
    }
    $tpl->set( 'return_link', $return_link );
    
    // Create the pathway for our template
    $navigation_pathway = $tpl->fetch( 'common/pathway.tpl.php');
    
    if ($ps_product_category->has_childs($category_id) ) {
      $category_childs = $ps_product_category->get_child_list($category_id);
      $tpl->set( 'categories', $category_childs );
      $navigation_childlist = $tpl->fetch( 'common/categoryChildlist.tpl.php');
    }
    
    // Set Dynamic Page Title
    if( function_exists('mb_substr')) {
      $page_title = mb_substr($product_name, 0, 64, vmGetCharset() );
    } else {
      $page_title = substr($product_name, 0, 64 );
      
    }
    $vm_mainframe->setPageTitle( html_entity_decode( $page_title, ENT_QUOTES, vmGetCharset() ));
    
    // Prepend Product Short Description Meta Tag "description"
    if( vmIsJoomla('1.5')) {
      $document = JFactory::getDocument();
      $document->setDescription(strip_tags( $db_product->f("product_s_desc")));
    } else {
      $mainframe->prependMetaTag( "description", strip_tags( $db_product->f("product_s_desc")) );
    }
    
    
    // Show an "Edit PRODUCT"-Link
    if ($perm->check("admin,storeadmin")) {
      $edit_link = '<a href="'. $sess->url( 'index2.php?page=product.product_form&next_page=shop.product_details&product_id='.$product_id).'" target=\"_blank\">
       <img src="images/M_images/edit.png" alt="'. $VM_LANG->_('PHPSHOP_PRODUCT_FORM_EDIT_PRODUCT') .'" border="0" /></a>';
    }
    else {
      $edit_link = "";
    }
    
    // LINK TO MANUFACTURER POP-UP
    $manufacturer_id = $ps_product->get_manufacturer_id($product_id);
    $manufacturer_name = $ps_product->get_mf_name($product_id);
    $manufacturer_link = "";
    if( $manufacturer_id && !empty($manufacturer_name) ) {
      $link = "$mosConfig_live_site/index2.php?page=shop.manufacturer_page&manufacturer_id=$manufacturer_id&output=lite&option=com_virtuemart&Itemid=".$Itemid;
      $text = '( '.$manufacturer_name.' )';
      $manufacturer_link .= vmPopupLink( $link, $text );
    
      // Avoid JavaScript on PDF Output
      if( @$_REQUEST['output'] == "pdf" )
      $manufacturer_link = "<a href=\"$link\" target=\"_blank\" title=\"$text\">$text</a>";
    }
    // PRODUCT PRICE
    if (_SHOW_PRICES == '1') {
      if( $db_product->f("product_unit") && VM_PRICE_SHOW_PACKAGING_PRICELABEL) {
       $product_price_lbl = "<strong>". $VM_LANG->_('PHPSHOP_CART_PRICE_PER_UNIT').' ('.$db_product->f("product_unit")."):</strong>";
      }
      else {
       $product_price_lbl = "<strong>". $VM_LANG->_('PHPSHOP_CART_PRICE'). ": </strong>";
      }
      $product_price = $ps_product->show_price( $product_id );
    }
    else {
      $product_price_lbl = "";
      $product_price = "";
    }
    // @var array $product_price_raw The raw unformatted Product Price in Float Format
    $product_price_raw = $ps_product->get_adjusted_attribute_price($product_id);
       
    // Change Packaging - Begin
    // PRODUCT PACKAGING
    if ( $db_product->f("product_packaging") ) {
      $packaging = $db_product->f("product_packaging") & 0xFFFF;
      $box = ($db_product->f("product_packaging") >> 16) & 0xFFFF;
      $product_packaging = "";
      if ( $packaging ) {
       $product_packaging .= $VM_LANG->_('PHPSHOP_PRODUCT_PACKAGING1').$packaging;
       if( $box ) $product_packaging .= "<br/>";
      }
      if ( $box ) {
       $product_packaging .= $VM_LANG->_('PHPSHOP_PRODUCT_PACKAGING2').$box;
      }
    
      $product_packaging = str_replace("{unit}",$db_product->f("product_unit")?$db_product->f("product_unit") : $VM_LANG->_('PHPSHOP_PRODUCT_FORM_UNIT_DEFAULT'),$product_packaging);
    }
    else {
      $product_packaging = "";
    }
    // Change Packaging - End
    
    // PRODUCT IMAGE
    $product_full_image = $product_parent_id!=0 && !$db_product->f("product_full_image") ?
    $dbp->f("product_full_image") : $db_product->f("product_full_image"); // Change
    $product_thumb_image = $product_parent_id!=0 && !$db_product->f("product_thumb_image") ?
    $dbp->f("product_thumb_image") : $db_product->f("product_thumb_image"); // Change
    
    /* MORE IMAGES ??? */
    $files = ps_product_files::getFilesForProduct( $product_id );
    
    $more_images = "";
    if( !empty($files['images']) ) {
      $more_images = $tpl->vmMoreImagesLink( $files['images'] );
    }
    // Does the Product have files?
    $file_list = ps_product_files::get_file_list( $files['product_id'] );
    
    $product_availability = '';
    
    if( @$_REQUEST['output'] != "pdf" ) {
      // Show the PDF, Email and Print buttons
      
    
      // AVAILABILITY
      // This is the place where it shows: Availability: 24h, In Stock: 5 etc.
      // You can make changes to this functionality in the file: classes/ps_product.php
      $product_availability = $ps_product->get_availability($product_id);
    }
    $product_availability_data = $ps_product->get_availability_data($product_id);
    
    /** Ask seller a question **/
    $ask_seller_href = $sess->url( $_SERVER ['PHP_SELF'].'?page=shop.ask&flypage='.@$_REQUEST['flypage']."&product_id=$product_id&category_id=$category_id" );
    $ask_seller_text = $VM_LANG->_('VM_PRODUCT_ENQUIRY_LBL');
    $ask_seller = '<a class="button" href="'. $ask_seller_href .'">'. $ask_seller_text .'</a>';
    
    /* SHOW RATING */
    $product_rating = "";
    if (PSHOP_ALLOW_REVIEWS == '1') {
      $product_rating = ps_reviews::allvotes( $product_id );
    }
    
    $product_reviews = $product_reviewform = "";
    /* LIST ALL REVIEWS **/
    if (PSHOP_ALLOW_REVIEWS == '1') {
      /*** Show all reviews available ***/
      $product_reviews = ps_reviews::product_reviews( $product_id );
      /*** Show a form for writing a review ***/
    
      if( $auth['user_id'] > 0 ) {
       $product_reviewform = ps_reviews::reviewform( $product_id );
      }
    }
    
    /* LINK TO VENDOR-INFO POP-UP **/
    $vend_id = $ps_product->get_vendor_id($product_id);
    $vend_name = $ps_product->get_vendorname($product_id);
    
    $link = "$mosConfig_live_site/index2.php?page=shop.infopage&vendor_id=$vend_id&output=lite&option=com_virtuemart&Itemid=".$Itemid;
    $text = $VM_LANG->_('PHPSHOP_VENDOR_FORM_INFO_LBL');
    $vendor_link = vmPopupLink( $link, $text );
    
    // Avoid JavaScript on PDF Output
    if( @$_REQUEST['output'] == "pdf" )
    $vendor_link = "<a href=\"$link\" target=\"_blank\" title=\"$text\">$text</a>";
    
    if ($product_parent_id!=0 && !$ps_product_type->product_in_product_type($product_id)) {
      $product_type = $ps_product_type->list_product_type($product_parent_id);
    }
    else {
      $product_type = $ps_product_type->list_product_type($product_id);
    }
    
    
    
    /**
    * This has changed since VM 1.1.0 
    * Now we have a template object that can use all variables
    * that we assign here.
    *
    * Example: If you run
    * $tpl->set( "product_name", $product_name );
    * The variable "product_name" will be available in the template under this name
    * with the value of $product_name
    *
    * */
    
    // This part allows us to copy ALL properties from the product table
    // into the template
    $productData = $db_product->get_row();
    $productArray = get_object_vars( $productData );
    
    $productArray["product_id"] = $product_id;
    $productArray["product_full_image"] = $product_full_image; // to display the full image on flypage
    $productArray["product_thumb_image"] = $product_thumb_image;
    $productArray["product_name"] = shopMakeHtmlSafe($productArray["product_name"]);
    
    $tpl->set( 'productArray', $productArray );
    foreach( $productArray as $property => $value ) {
      $tpl->set( $property, $value);
    }
    // Assemble the thumbnail image as a link to the full image
    // This function is defined in the theme (theme.php)
    $product_image = $tpl->vmBuildFullImageLink( $productArray );
    
    $tpl->set( "product_id", $product_id );
    $tpl->set( "product_name", $product_name );
    $tpl->set( "product_image", $product_image );
    $tpl->set( "more_images", $more_images );
    $tpl->set( "images", $files['images'] );
    $tpl->set( "files", $files['files'] );
    $tpl->set( "file_list", $file_list );
    $tpl->set( "edit_link", $edit_link );
    $tpl->set( "manufacturer_link", $manufacturer_link );
    $tpl->set( "product_price", $product_price );
    $tpl->set( "product_price_lbl", $product_price_lbl );
    $tpl->set( 'product_price_raw', $product_price_raw );
    $tpl->set( "product_description", $product_description );
    
    /* ADD-TO-CART */
    $tpl->set( 'manufacturer_id', $manufacturer_id );
    $tpl->set( 'flypage', $flypage );
    $tpl->set( 'ps_product_attribute', $ps_product_attribute );
    $addtocart = $tpl->fetch('product_details/includes/addtocart_form.tpl.php' );
    
    $tpl->set( "addtocart", $addtocart );
    // Those come from separate template files
    $tpl->set( "navigation_pathway", $navigation_pathway );
    $tpl->set( "navigation_childlist", $navigation_childlist );
    $tpl->set( "product_reviews", $product_reviews );
    $tpl->set( "product_reviewform", $product_reviewform );
    $tpl->set( "product_availability", $product_availability );
    $tpl->set( "product_availability_data", $product_availability_data );
    
    $tpl->set( "related_products", $related_products );
    $tpl->set( "vendor_link", $vendor_link );
    $tpl->set( "product_type", $product_type ); // Changed Product Type
    $tpl->set( "product_packaging", $product_packaging ); // Changed Packaging
    $tpl->set( "ask_seller_href", $ask_seller_href ); // Product Enquiry!
    $tpl->set( "ask_seller_text", $ask_seller_text ); // Product Enquiry!
    $tpl->set( "ask_seller", $ask_seller ); // Product Enquiry!
    $tpl->set( "recent_products", $recent_products); // Recent products
    /* Finish and Print out the Page */
    echo $tpl->fetch( '/product_details/'.$flypage . '.php' );
    
    ?>

    یا علی

    جهت مشاهده لینک ها باید ثبت نام کنید یا لاگین کنید.


  10. #9

    تاریخ عضویت
    Dec 2009
    نوشته ها
    63
    تشکر
    0
    تشکر شده 0 بار در 0 ارسال

    پاسخ : فونت و لينك در ويرچومارت

    نه خیر حل نشد

    جهت مشاهده لینک ها باید ثبت نام کنید یا لاگین کنید.


  11. #10

    تاریخ عضویت
    Jun 2009
    محل سکونت
    Kuala Lumpur
    نوشته ها
    2,440
    تشکر
    0
    تشکر شده 16 بار در 16 ارسال

    پاسخ : فونت و لينك در ويرچومارت

    سلام

    آیا مطمئنید که فایل php رو درست تشخیص دادید و تغییرات باید در این فایل صورت بگیره؟
    اگر بله، به احتمال زیاد این کار نیاز به بررسی بیشتر و اعمال تغییرات مشابه در چندین فایل داره.


    یا علی

    جهت مشاهده لینک ها باید ثبت نام کنید یا لاگین کنید.


صفحه 1 از 2 12 آخرینآخرین

علاقه مندی ها (Bookmarks)

علاقه مندی ها (Bookmarks)

مجوز های ارسال و ویرایش

  • شما نمیتوانید موضوع جدیدی ارسال کنید
  • شما امکان ارسال پاسخ را ندارید
  • شما نمیتوانید فایل پیوست کنید.
  • شما نمیتوانید پست های خود را ویرایش کنید
  •