Re: Products Pagination - Support Thread
Thanks for the kind words. I've submitted v1.4.1 of the plugin for review; I'm guessing that it will be available this weekend. This version corrects the item-count reset (turns out changing the item-count also reset the sort-order; that's fixed, too). Three additional override files are added to the "mix":
Code:
/includes/init_includes/overrides/init_canonical.php
/includes/templates/YOUR_TEMPLATE/templates/tpl_index_product_list.php
/includes/templates/YOUR_TEMPLATE/templates/tpl_modules_listing_display_order.php
and the pagecount value was modified to be a GET variable instead of a POST variable (that's mostly where all the changes came from).
Re: Products Pagination - Support Thread
v1.4.1 is now available in the Plugins area ...
Re: Products Pagination - Support Thread
Quote:
Originally Posted by
lat9
v1.4.1 is now available in the Plugins area ...
Hi Lat9,
Thank you so much for this fantastic plug in! I have installed an earlier version of this plugin and now wish to update to this latest version. Is it a case of:
1. Run the sql file included with the new install files
2. Upload all the new files, over writing any already there. Over write or merge the core file (depending on whether I have already modified it for another purpose)
Or do I need to run the uninstall sql file first and then the sql file from the update?
Would appreciate any help you can give.
Many thanks
Re: Products Pagination - Support Thread
OLCS, first step is always to make a full backup of your database and files ... s**t happens!
If your previous version was 1.3.0 or later then you don't need to re-run the SQL install file. Otherwise, make a note of any changes you've made to your Configuration->Product Pagination, re-run the SQL patch and then make sure that your Configuration->Product Pagination settings are what you want. Note that the new fields default to false (i.e. no page drop-down, no item-count drop-down).
The readme.html file identifies each of the files added/modified by the plugin. Unless you are positive that only this plugin has changed a particular file currently used by your store (whether core file or template-override file), you should use a file-comparison tool like WinMerge to ensure that you are not losing function by simply copying/overwriting your existing files.
Re: Products Pagination - Support Thread
Many thanks for your advice Lat9, very much appreciated, and thanks for all your hard work with this plugin.
Re: Products Pagination - Support Thread
Works like a charm - thanks!
Re: Products Pagination - Support Thread
Good afternoon. Thanks, very good plugin.
But there is one problem, at display of quantity of displayed elements searching. If on page advanced_search_result to change quantity of displayed elements to other quantity, leads to search reset.
Here example --> http://www.perchinkastyle.ru/index.p...=&dto=&x=0&y=0
Re: Products Pagination - Support Thread
Yikes! Thanks for the report. Here's an update to the ppCountDropdown function in /includes/functions/extra_functions/products_pagination_functions.php that corrects the problem. Note that two extra functions have been "broken out":
Code:
function ppCountDropdown ($numItems) {
global $getoption_set, $get_option_variable, $cPath; // Used on product-listing/index page
$dropdown = '';
$countArray = explode(',', PRODUCTS_PAGINATION_COUNT_VALUES);
if (count($countArray) > 0) {
$pageArray = array();
for ($i=0, $n=sizeof($countArray); $i<$n; $i++) {
if ($countArray[$i] == '*') {
$pageArray[] = array( 'id' => 'all', 'text' => PP_TEXT_ALL );
} elseif ($numItems > $countArray[$i]) {
$pageArray[] = array( 'id' => $countArray[$i], 'text' => $countArray[$i]);
}
}
$whichCount = (isset($_GET['pagecount'])) ? $_GET['pagecount'] : '';
$formPage = ($_GET['main_page'] == FILENAME_ADVANCED_SEARCH_RESULT) ? FILENAME_ADVANCED_SEARCH : $_GET['main_page']; /*v1.4.2-c-lat9*/
$dropdown = '<div class="pp_count">' . zen_draw_form('pp_count_form', zen_href_link($_GET['main_page']), 'get') . zen_hide_session_id() . zen_draw_hidden_field ('main_page', $_GET['main_page']);
$hiddenVar = ppHiddenVarsList(); /*v1.4.2-c-lat9: Moved to separate function */
if ($_GET['main_page'] == FILENAME_DEFAULT) {
if (!$getoption_set) {
$dropdown .= zen_draw_hidden_field('cPath', $cPath);
} else {
// draw manufacturers_id
$dropdown .= zen_draw_hidden_field($get_option_variable, $_GET[$get_option_variable]);
}
if ($get_option_variable != 'manufacturers_id' && isset($_GET['manufacturers_id']) && $_GET['manufacturers_id'] > 0) {
$hiddenVar[] = 'manufacturers_id';
}
}
$dropdown .= ppCreateHiddenInputs ($hiddenVar); /*v1.4.2-c-lat9: Moved to separate function */
$dropdown .= PP_TEXT_ITEMS_PER_PAGE . zen_draw_pull_down_menu ('pagecount', $pageArray, $whichCount, 'onchange="this.form.submit();"') . '</form></div>';
}
return $dropdown;
}
function ppHiddenVarsList() {
return explode (',', 'disp_order,sort,filter_id,music_genre_id,record_company_id,typefilter,keyword,search_in_description,categories_id,inc_subcat,manufacturers_id,pfrom,pto,dfrom,dto,alpha_filter_id'); /*v1.4.2-c-lat9*/
}
function ppCreateHiddenInputs ($hiddenVar) {
$inputVars = '';
foreach ($hiddenVar as $varName) {
$inputVars .= (isset($_GET[$varName]) ? zen_draw_hidden_field ($varName, $_GET[$varName]) : '');
}
return $inputVars;
}
For the full correction, you'll need to replace /include/templates/YOUR_TEMPLATE/templates/tpl_modules_listing_display_order.php with the following:
Code:
<?php
/**
* Module Template
*
* @package templateSystem
* @copyright Copyright 2003-2006 Zen Cart Development Team
* @copyright Portions Copyright 2003 osCommerce
* @license http://www.zen-cart.com/license/2_0.txt GNU Public License V2.0
* @version $Id: tpl_modules_listing_display_order.php 3369 2006-04-03 23:09:13Z drbyte $
*/
?>
<?php
// NOTE: to remove a sort order option add an HTML comment around the option to be removed
?>
<div id="sorter">
<label for="disp-order-sorter"><?php echo TEXT_INFO_SORT_BY; ?></label>
<?php
echo zen_draw_form('sorter_form', zen_href_link($_GET['main_page']), 'get');
echo zen_draw_hidden_field('main_page', $_GET['main_page']);
echo zen_draw_hidden_field('pagecount', $_GET['pagecount']);
// echo zen_draw_hidden_field('disp_order', $_GET['disp_order']);
/*-bof-product_pagination-lat9*/
if (function_exists('ppHiddenVarsList') && function_exists('ppCreateHiddenInputs')) {
echo ppCreateHiddenInputs (ppHiddenVarsList ());
}
/*-eof-product_pagination-lat9*/
echo zen_hide_session_id();
?>
<select name="disp_order" onchange="this.form.submit();" id="disp-order-sorter">
<?php if ($disp_order != $disp_order_default) { ?>
<option value="<?php echo $disp_order_default; ?>" <?php echo ($disp_order == $disp_order_default ? 'selected="selected"' : ''); ?>><?php echo PULL_DOWN_ALL_RESET; ?></option>
<?php } // reset to store default ?>
<option value="1" <?php echo ($disp_order == '1' ? 'selected="selected"' : ''); ?>><?php echo TEXT_INFO_SORT_BY_PRODUCTS_NAME; ?></option>
<option value="2" <?php echo ($disp_order == '2' ? 'selected="selected"' : ''); ?>><?php echo TEXT_INFO_SORT_BY_PRODUCTS_NAME_DESC; ?></option>
<option value="3" <?php echo ($disp_order == '3' ? 'selected="selected"' : ''); ?>><?php echo TEXT_INFO_SORT_BY_PRODUCTS_PRICE; ?></option>
<option value="4" <?php echo ($disp_order == '4' ? 'selected="selected"' : ''); ?>><?php echo TEXT_INFO_SORT_BY_PRODUCTS_PRICE_DESC; ?></option>
<option value="5" <?php echo ($disp_order == '5' ? 'selected="selected"' : ''); ?>><?php echo TEXT_INFO_SORT_BY_PRODUCTS_MODEL; ?></option>
<option value="6" <?php echo ($disp_order == '6' ? 'selected="selected"' : ''); ?>><?php echo TEXT_INFO_SORT_BY_PRODUCTS_DATE_DESC; ?></option>
<option value="7" <?php echo ($disp_order == '7' ? 'selected="selected"' : ''); ?>><?php echo TEXT_INFO_SORT_BY_PRODUCTS_DATE; ?></option>
</select></form></div>
I'll get v1.4.2 submitted to the Plugins area later this week.
Re: Products Pagination - Support Thread
Thanks, error it is corrected. You did good operation!
Re: Products Pagination - Support Thread