Community @ The Turning Gate

Support community for TTG plugins and products.

NOTICE

The Turning Gate's Community has moved to a new home, at https://discourse.theturninggate.net.

This forum is now closed, and exists here as a read-only archive.

  • New user registrations are disabled.
  • Users cannot create new topics.
  • Users cannot reply to existing topics.

You are not logged in.

#1 2018-12-16 02:30:02

pideja
Member
From: Montreal
Registered: 2013-02-26
Posts: 1,299

Breadcrumbs

On this page: https://pideja.ca/tnm/galleries/saison- … single.php, you will notice that there are three breadcrumbs: Productions>Saison 2010-2011>Le Dieu du carnage. The last one being the title of this production. The image file number appears below the image.
On this other one: https://pideja.ca/duc/galleries/2018-20 … single.php , the title appears twice. This is redundant and I would like it not to appear.
I succeeded in doing this on the first site but for the second, evidently, I don't remember how.
Hints, anyone?

Offline

#2 2018-12-16 02:33:29

rod barbee
Moderator
From: Port Ludlow, WA USA
Registered: 2012-09-24
Posts: 17,830
Website

Re: Breadcrumbs

Did you use phplugins on the other site?


Rod 
Just a user with way too much time on his hands.
www.rodbarbee.com
ttg-tips.com, Backlight 2/3 test site

Offline

#3 2018-12-16 02:56:18

pideja
Member
From: Montreal
Registered: 2013-02-26
Posts: 1,299

Re: Breadcrumbs

Actually, that's what I am doing. I copied the php from the tnm site and pasted it in the duc site. But, up to now, no result.

Offline

#4 2018-12-16 03:02:37

pideja
Member
From: Montreal
Registered: 2013-02-26
Posts: 1,299

Re: Breadcrumbs

Except that, copied in it's entirety, this php file which works fine on the tnm site, returns this message on the duc site: Something went wrong
Unexpected error: syntax error, unexpected '*', expecting function (T_FUNCTION) in phplugins-pangolin-duc.php on line 28

Offline

#5 2018-12-16 03:11:16

pideja
Member
From: Montreal
Registered: 2013-02-26
Posts: 1,299

Re: Breadcrumbs

I respectfully submit the php code, that works on one site but not the other, I am using:

<?php
/*
 *  TTG Core Elements "PHPlugins" User Hooks v1.2 - initialization mainline
 *
 *  developed by john bishop images (http://johnbishopimages.com)
 *  for Matthew Campagna of The Turning Gate (http://theturninggate.net)
 *
 */

function user_load($style, $path) {
  $g_tsvrl = explode(' ', $style); // Extract gallery type
  define ('G_STYLE', strtoupper($g_tsvrl[1])); // and set global for later
  $g_path = str_ireplace('\\','/',$path); // change \ to /
  $chunks = explode('/',$g_path); // and put into array
  define ('G_PATH', strtoupper($chunks[count($chunks)-2])); // gallery folder name is second to last
  //define ( 'TTG_SITE', ''); // set new site root for navigation, resources, etc.
}

if (defined('BACKLIGHT_HOOK')) {
	require_once(realpath(BACKLIGHT_HOOK).'/modules/module-designer/application/helpers/APHPlugins.php');
}

function ttg_crumb( $page_name ) {
	echo '<ul class="breadcrumbs"><li class="fa_pseudo" itemscope itemtype="http://data-vocabulary.org/Breadcrumb"><a href="/" itemprop="url"><span itemprop="title">Home</span></a></li><li class="fa_pseudo" itemscope itemtype="http://data-vocabulary.org/Breadcrumb"><span itemprop="title">'. $page_name .'</span></li></ul>';
}
class PHPlugins extends APHPlugins
{
	*/
} // END

// ****************************************************************************************************
// END USER FUNCTIONS
} ?>

/*
function main_top(){
	// Add breadcrumbs to non-gallery pages
	if (strtolower($this->slug) == 'about') {
		$this->ttg_crumb('About');
	} else if (strtolower($this->slug) == 'contact') {
		$this->ttg_crumb('Contact');
	} else if (strtolower($this->slug) == 'search') {
		$this->ttg_crumb('Search');
	} else if (strtolower($this->slug) == 'xxxx') {
		$this->ttg_crumb('Xxxx');
	}
}
*/

/*
function main_top(){
	// Add breadcrumbs to non-gallery pages
	if (strtolower($this->slug) == 'about') {
		$this->ttg_crumb('About');
	} else if (strtolower($this->slug) == 'contact') {
		$this->ttg_crumb('Contact');
	} else if (strtolower($this->slug) == 'search') {
		$this->ttg_crumb('Search');
	} else if (strtolower($this->slug) == 'xxxx') {
		$this->ttg_crumb('Xxxx');
	}
}

class PHPlugins extends APHPlugins
{
/**/
 *
 *  *************************************************************************************
 *  *                                                                                   *
 *  * Warning! When using echo or print special care must be qiven to using quotes.     *
 *  *                                                                                   *
 *  * Strings inside single quotes must contain only double quotes                      *
 *  * or all single quotes must be escaped (ie \') or vice-versa                        *
 *  *                                                                                   *
 *  *************************************************************************************
 *
 *  Fourteen user exits are defined in all web engines - all are optional
 *    (i.e. user_load.php may be the only processing)
 *
 *  Some web engines will have additional exits defined, specific to that gallery type
 *
 *  Each is called with the same parameters:
 *    %1  - TTG gallery-style gallery-release
 *        3 blank delimited values
 *        - %1.1  - 'TTG'
 *        - %1.2  - string describing gallery type; no embedded blanks
 *        - %1.3  - a series of two to three period delimited integers
 *              describing gallery release level; x.y or x.y.z
 *    %2  - server filesystem file name and path of calling file
 *
 *
 *  Defined exits:
 *
 *    user_load
 *      - return value ignored
 *      - called immediately after this file returns
 *      - called before any output is produced
 *      - all header and response variables are accessible
 *      - cookie and session processing can be initialized
 *      - globals to be used by later hook calls can be defined
 *
 *    head
 *      - return value ignored
 *      - called immediately before </head>
 *      - encompasses nothing; use to insert content into the <head>
 *
 *    header_top
 *      - if return=false, the contents of the normal Backlight header are skipped
 *      - called immediately within the header section
 *      - encompasses the full contents of the header section; can be used to replace those contents
 *
 *    header_bottom
 *      - return value ignored
 *      - called last in the header section
 *      - encompasses nothing; use to insert content at the end of the header section
 *
 *    masthead_primary_top
 *      - if return=false, normal Backlight masthead is skipped
 *      - called immediately before the masthead element
 *      - fully encompasses the masthead; can be used to replace it
 *
 *    masthead_primary_bottom
 *      - return value ignored
 *      - called immediately after the masthead
 *      - encompasses nothing; use to insert content after the masthead
 *
 *    masthead_secondary_top
 *      - if return=false, normal Backlight masthead is skipped
 *      - called immediately before the masthead element
 *      - fully encompasses the masthead; can be used to replace it
 *
 *    masthead_secondary_bottom
 *      - return value ignored
 *      - called immediately after the masthead
 *      - encompasses nothing; use to insert content after the masthead
 *
 *    navigation
 *      - if return=false, normal Backlight navigation is skipped
 *      - navigation is separate from the header section, so not affected by the above header... hooks.
 *      - encompasses the navigation <ul> element; can be used to replace it
 *
 *    main_top
 *      - return value ignored
 *      - called immediately within the main content column
 *      - encompasses nothing; use to insert content at the very top of the main content column
 *      - located outside the password protected area
 *
 *    main_bottom
 *      - return value ignored
 *      - called immediately before closing the main content column
 *      - encompasses nothing; use to insert content at the very bottom of the main content column
 *      - located outside the password protected area
 *
 *    footer_top
 *      - if return=false, the contents of the normal Backlight footer are skipped
 *      - called immediately within the footer section
 *      - encompasses the full contents of the footer section; can be used to replace those contents
 *
 *    footer_bottom
 *      - return value ignored
 *      - called last in the footer section
 *      - encompasses nothing; use to insert content at the end of the footer section
 *
 *    pallet_top_title
 *      - if return=false, the encompassed code is skipped
 *      - wraps the site title in the top pallet
 *      - use to replace the site title
 *
 *    toggle_T1
 *      - if return=false, the encompassed code is skipped
 *      - wraps the label element for "page__toggle__T1"
 *      - use to replace the toggle button with one of your own making
 *
 *    toggle_T2
 *      - if return=false, the encompassed code is skipped
 *      - wraps the label element for "page__toggle__T2"
 *      - use to replace the toggle button with one of your own making
 *
 *    social_top
 *      - if return=false, normal content is skipped
 *      - called immediately before social media icons in the top pallet
 *      - encompasses the social media icons; can be used to replace them
 *
 *    social_bottom
 *      - return value ignored
 *      - called immediately after social media icons in the top pallet
 *      - encompasses nothing; use to insert content following the social media icons
 *
 *    scripts
 *      - return value ignored
 *      - called immediately before </body>
 *      - encompasses nothing; use to insert content at the very bottom of the page
 *
 *    copy_top
 *      - if return=false, normal copy is skipped
 *      - called immediately within the page copy area
 *      - encompasses the page copy; can be used to replace it
 *
 *    copy_bottom
 *      - return value ignored
 *      - called immediately before closing the page copy area
 *      - encompasses nothing; use to insert content following the page copy
 *
 *    pallet01_top
 *      - if return=false, pallet content is skipped
 *      - called within pallet01, after masthead and navigation
 *      - encompasses the pallet01 content area
 *
 *    pallet01_bottom
 *      - return value ignored
 *      - called after the pallet01 content
 *      - encompasses nothing; use to insert content at the end of pallet01
 *
 *    pallet02_top
 *      - if return=false, pallet content is skipped
 *      - called within pallet02, after masthead and navigation
 *      - encompasses the pallet02 content area
 *
 *    pallet02_bottom
 *      - return value ignored
 *      - called after the pallet02 content
 *      - encompasses nothing; use to insert content at the end of pallet02
 *
 *    albumset_top
 *      - if return=false, normal copy is skipped
 *      - called immediately within the media area
 *      - encompasses the gallery grid / slideshow; can be used to replace it
 *
 *    albumset_bottom
 *      - return value ignored
 *      - called immediately before closing the media area
 *      - encompasses nothing; use to insert content following the gallery grid / slideshow
 *
 *    album_top
 *      - if return=false, the album content is skipped
 *      - called immediately within the media area
 *      - encompasses the album grid / slideshow; can be used to replace it
 *
 *    album_bottom
 *      - return value ignored
 *      - called immediately before closing the media area
 *      - encompasses nothing; use to insert content following the album grid / slideshow
 *
 *    single_top
 *      - if return=false, single image and content are skipped
 *      - called immediately above the single image display
 *      - encompasses the single image and related metadata; can be used to replace it
 *      - available only on single-image HTML pages for applicable album templates
 *
 *    single_bottom
 *      - return value ignored
 *      - called after the single image display
 *      - encompasses nothing; use to insert content following the single image display
 *      - available only on single-image HTML pages for applicable album templates
 *
 */

// SET USER FUNCTIONS BELOW
// Some example functions are included below. Feel free to delete or modify unwanted functions.
// ****************************************************************************************************



/* DELETE THIS LINE
// Basic structure for a PHPlugins function
function _HOOK_() {
	echo '

	';
	return false;
} // END /**/



/* DELETE THIS LINE
// Display the Backlight logo in pallet_top
function pallet_top_title()
{
	echo '
	<li class="logomark backlight_logomark" style="float:left;">
		<a href="#">
			<ul>
				<li style="opacity:.85; top:75%; left:75%;"></li>
				<li style="opacity:.40; top:75%; left:50%;"></li>
				<li style="opacity:.40; top:50%; left:75%;"></li>
				<li style="opacity:.55; top:75%; left:25%;"></li>
				<li style="opacity:.55; top:25%; left:75%;"></li>
				<li style="opacity:.55; top:50%; left:50%;"></li>
				<li style="opacity:.70; top:50%; left:25%;"></li>
				<li style="opacity:.70; top:75%; left: 0%;"></li>
				<li style="opacity:.70; top:25%; left:50%;"></li>
				<li style="opacity:.70; top: 0%; left:75%;"></li>
				<li style="opacity:.85; top:50%; left: 0%;"></li>
				<li style="opacity:.85; top: 0%; left:50%;"></li>
				<li style="opacity:.98; top: 0%; left: 0%; width: 50%; height: 50%"></li>
			</ul>
			<h1><strong>B</strong>acklight</h1>
		</a>
	</li>
	';
	return false;
} // END /**/



/* DELETE THIS LINE
// Display The Turning Gate's logo in pallet_top
function pallet_top_title()
{
	echo '
	<li class="logomark theturninggate_logomark" style="float:left;">
		<a href="/">
			<ul>
				<li style="top: 0%; left: 0%;" class="color_999999"></li>
				<li style="top: 0%; left:25%;" class="color_66ccff"></li>
				<li style="top: 0%; left:50%;" class="color_0099cc col_x2"></li>
				<li style="top:25%; left: 0%;" class="color_ff9933 col_x2 row_x2"></li>
				<li style="top:25%; left:50%;" class="color_999999"></li>
				<li style="top:25%; left:75%;" class="color_999999"></li>
				<li style="top:50%; left:50%;" class="color_999999"></li>
				<li style="top:50%; left:75%;" class="color_66cc33 row_x2"></li>
				<li style="top:75%; left: 0%;" class="color_999999"></li>
				<li style="top:75%; left:25%;" class="color_999999"></li>
				<li style="top:75%; left:50%;" class="color_99cc66"></li>
			</ul>
			<h1>The Turning Gate</h1>
		</a>
	</li>
	';
	return false;
} // END /**/



/* DELETE THIS LINE
// Display content conditionally based on protection type and login status
function main_top() {
	echo '<ul style="background-color:#FFF9C4;color:#000;margin:1.5rem 0;padding:24px 36px;">';
		if (PASSWORD_ENABLED) {
			echo '<li><strong>This gallery is private</strong>.</li>';
			if (LOGGED_IN) {
				echo '<li><small>The user is logged in</small>.</li>';
			} else {
				echo '<li><small>The user is logged out</small>.</li>';
			}
		} elseif ( $this->isManaged() ) {
			echo '<li><strong>This gallery is client managed</strong>.</li>';
		} else {
			echo '<li><strong>This gallery is public</strong>.</li>';
		}
	echo '</ul>';
	return false;
} // END /**/



/* DELETE THIS LINE
function toggle_T1() {
	// Below, the bare minimum markup required for functioning toggles;
	// fill in the LI element as you wish. Custom CSS may be necessary.
	echo '

	<label for="page__toggle__T1">
		<ul><li></li></ul>
	</label>

	';
	return false;
} // END /**/



/* DELETE THIS LINE
function pallet_top_title() {
	// Below, the default markup for the title. The LI wrapping element is mandatory;
	// replace the inner HTML as you see fit. Retain the "masthead_pallet_top" class and styling,
	// or assign a new class, with styling defined in custom CSS.
	// Take note, the top pallet height is a 48px fixed value.
	echo '

	<li class="masthead_pallet_top">
		<h1><a href="/">Your Site Title</a></h1>
	</li>

	';
	return false;
} // END /**/



/* DELETE THIS LINE
function navigation() {
	echo '
	<ul class="primary-menu menu mouseable">
		<li class="menu-item"><a href="/">Home</a></li>
		<li class="menu-item menu-item-has-children"><a href="/galleries">Galleries</a>
			<ul class="sub-menu">
				<li class="menu-item"><a href="">Sub-item 1</a></li>
				<li class="menu-item"><a href="">Sub-item 2</a></li>
				<li class="menu-item"><a href="">Sub-item 3</a></li>
				<li class="menu-item"><a href="">Sub-item 4</a></li>
				<li class="menu-item"><a href="">Sub-item 5</a></li>
				<li class="menu-item"><a href="">Sub-item 6</a></li>
				<li class="menu-item"><a href="">Sub-item 7</a></li>
				<li class="menu-item"><a href="">Sub-item 8</a></li>
			</ul>
		</li>
		<li class="menu-item"><a href="/blog">Blog</a></li>
		<li class="menu-item"><a href="/about">About</a></li>
		<li class="menu-item"><a href="/contact">Contact</a></li>
	</ul>
	';
	return false;
} // END /**/



/* DELETE THIS LINE
// Adding new social media icons before ...
function social_top() {
	echo '

	<li><a target="_blank" href="" class="social_media fa fa-google-plus"></a></li>

	';
	return true;
} // END

// ... and after.
function social_bottom() {
	echo '

	<li><a target="_blank" href="" class="social_media fa fa-pinterest"></a></li>
	<li><a target="_blank" href="" class="social_media fa fa-instagram"></a></li>

	';
} // END /**/



/* DELETE THIS LINE
// Add class "current_page_item" to menu item for the current page;
// You can style this as you like, for example, to highlight the current page menu item.
function scripts() {
echo <<<SCRIPT
	<script>
	$("ul.menu a[href='" + window.location.pathname + "']")
		.parentsUntil('.menu', 'li')
		.addClass("current_page_item")
		;
	</script>
SCRIPT;
	return false;
} // END /**/



/* DELETE THIS LINE
// Adds custom text to Next-page Cards in albums
function scripts() {
echo <<<SCRIPT
	<script>
		var card = $('#nextPageCard');

		var numPages = card.data('pages');
		var thisPage = card.data('current');
		var nextPage = card.data('next');

		// 1.
		// Add text to the card
		var cardText = $('<div />')
			.html('<p>to Page ' + nextPage + ' of ' + numPages + '</p>')
			.css({
				color: '#fff',
				display: 'block',
				fontSize: '0.875rem',
				position: 'absolute',
					bottom: 12,
					left: 0,
				textAlign: 'center',
				width: '100%'
			})
			.appendTo($(card));

		// 2.
		// Change Font Awesome icon via addClass
		$(card).find('i')
			.removeClass('fa-step-forward')
			.addClass('fa-long-arrow-right');

		// 3.
		// Fully replace and customize card content
		$(card).find('a')
			.html(
				'<span class="fa-stack">' +
					'<span class="fa fa-file-o fa-stack-2x"></span>' +
					'<strong class="fa-stack-1x"><span style="font-size: 0.75rem">' + thisPage + '</strong>' +
				'</span>' +
				'<i class="fa fa-long-arrow-right"></i>' +
				'<span class="fa-stack">' +
					'<span class="fa fa-file-o fa-stack-2x"></span>' +
					'<strong class="fa-stack-1x"><span style="font-size: 0.75rem">' + nextPage + '</strong>' +
				'</span>'
			);

	</script>
SCRIPT;
	return false;
} // END /**/



/* DELETE THIS LINE
// Target "Backlight Pangolin" templates specifically
function main_top() {

	if( preg_match( '/^BACKLIGHT-PANGOLIN(.*)$/', $this->style ) ) {
		// FUNCTION HERE
		echo 'Type 1';
	}

	// OR //

	if ( $this->style == 'BACKLIGHT-PANGOLIN' ) {
		// FUNCTION HERE
		echo 'Type 2';
	}

} // END /**/



/* DELETE THIS LINE
function copy_top()
{
	//echo 'style: '.$this->style.'<br/>';
	//echo 'path: '.$this->path.'<br/>';

	if ($this->hasAlbum()) {
		echo '<p>';
		echo 'Album Title: '.$this->album->getTitle().'<br/>';
		echo 'Album Description: '.$this->album->getDescription().'<br/>';
		echo 'Number of photos: '.$this->album->getNumberOfPhotos().'<br/';
		echo '</p>';
	}
	return true;
} // END /**/



/* DELETE THIS LINE
function single_top()
{
	if ($this->hasPhoto()) {
		echo '<p>';
		echo 'Filename: '.$this->photo->getFilename().'<br/>';
		echo 'Dimensions: '.$this->photo->getPhotoWidth().'w x '.$this->photo->getPhotoHeight().'h<br/>';
		echo '</p>';
	}
	return true;
} // END /**/



// ****************************************************************************************************
// END USER FUNCTIONS

} ?>

Last edited by pideja (2018-12-16 03:12:28)

Offline

#6 2018-12-16 04:01:46

rod barbee
Moderator
From: Port Ludlow, WA USA
Registered: 2012-09-24
Posts: 17,830
Website

Re: Breadcrumbs

start with as fresh phplugins file. You've got stuff moved around so much that you're causing errors.

Place any code you're adding in the USER FUNCTIONS area

this particular bit, starting at line 28 as the error message indicates, is what's causing your problem:

*/
} // END

// ****************************************************************************************************
// END USER FUNCTIONS
} ?>

this: ?> essentially ends the file

It looks like something got moved around in your file. So just open up a new phplugins, like phplugins-pangolin-sample.php, in a plain text editor and place your code in the user area. Save the file using Save As.

if you use a code editor with syntax highlighting you'll be able to better see where problems lie.
I use Notepad ++. Visual Studio Code was recently mentioned on the forum, that's another good one. Both free.


Rod 
Just a user with way too much time on his hands.
www.rodbarbee.com
ttg-tips.com, Backlight 2/3 test site

Offline

#7 2018-12-16 04:23:32

pideja
Member
From: Montreal
Registered: 2013-02-26
Posts: 1,299

Re: Breadcrumbs

Fixed the php file as you suggested. Works fine. But, I still have that redundancy problem that originated this posting.

Offline

#8 2018-12-16 04:27:28

pideja
Member
From: Montreal
Registered: 2013-02-26
Posts: 1,299

Re: Breadcrumbs

Can I remove all the commented section before the user function section? It would lighten the script quite a bit.

Offline

#9 2018-12-16 04:29:42

rod barbee
Moderator
From: Port Ludlow, WA USA
Registered: 2012-09-24
Posts: 17,830
Website

Re: Breadcrumbs

pideja wrote:

Can I remove all the commented section before the user function section? It would lighten the script quite a bit.

I suppose. Give it a try


Rod 
Just a user with way too much time on his hands.
www.rodbarbee.com
ttg-tips.com, Backlight 2/3 test site

Offline

#10 2018-12-16 04:30:07

pideja
Member
From: Montreal
Registered: 2013-02-26
Posts: 1,299

Re: Breadcrumbs

Can I remove all the commented section before the user function section? It would lighten the script quite a bit.
And here is the code I use in the user functions section:

// SET USER FUNCTIONS BELOW
// Some example functions are included below. Feel free to delete or modify unwanted functions.
// ****************************************************************************************************


function ttg_crumb( $page_name ) {
	echo '<ul class="breadcrumbs"><li class="fa_pseudo" itemscope itemtype="http://data-vocabulary.org/Breadcrumb"><a href="/" itemprop="url"><span itemprop="title">Home</span></a></li><li class="fa_pseudo" itemscope itemtype="http://data-vocabulary.org/Breadcrumb"><span itemprop="title">'. $page_name .'</span></li></ul>';
}	
	
} // END /**/

/* DELETE THIS LINE
// Basic structure for a PHPlugins function
function _HOOK_() {
	echo '

	';
	return false;
} // END /**/
   

Offline

#11 2018-12-16 04:31:34

pideja
Member
From: Montreal
Registered: 2013-02-26
Posts: 1,299

Re: Breadcrumbs

Removed all that excess commented text - no problem.

Offline

#12 2018-12-16 04:34:50

pideja
Member
From: Montreal
Registered: 2013-02-26
Posts: 1,299

Re: Breadcrumbs

As a matter of fact, I deleted most of the commented text. Works fine, makes for a slimmer php file.

 <?php
/*
 *  TTG Core Elements "PHPlugins" User Hooks v1.2 - initialization mainline
 *
 *  developed by john bishop images (http://johnbishopimages.com)
 *  for Matthew Campagna of The Turning Gate (http://theturninggate.net)
 *
 */

function user_load($style, $path) {
  $g_tsvrl = explode(' ', $style); // Extract gallery type
  define ('G_STYLE', strtoupper($g_tsvrl[1])); // and set global for later
  $g_path = str_ireplace('\\','/',$path); // change \ to /
  $chunks = explode('/',$g_path); // and put into array
  define ('G_PATH', strtoupper($chunks[count($chunks)-2])); // gallery folder name is second to last
  //define ( 'TTG_SITE', ''); // set new site root for navigation, resources, etc.
}

if (defined('BACKLIGHT_HOOK')) {
	require_once(realpath(BACKLIGHT_HOOK).'/modules/module-designer/application/helpers/APHPlugins.php');
}

class PHPlugins extends APHPlugins
{
 


// END /**/

// SET USER FUNCTIONS BELOW
// ****************************************************************************************************


function ttg_crumb( $page_name ) {
	echo '<ul class="breadcrumbs"><li class="fa_pseudo" itemscope itemtype="http://data-vocabulary.org/Breadcrumb"><a href="/" itemprop="url"><span itemprop="title">Home</span></a></li><li class="fa_pseudo" itemscope itemtype="http://data-vocabulary.org/Breadcrumb"><span itemprop="title">'. $page_name .'</span></li></ul>';
}	
	
} // END /**/

 ?>
  

Offline

#13 2018-12-16 04:48:36

rod barbee
Moderator
From: Port Ludlow, WA USA
Registered: 2012-09-24
Posts: 17,830
Website

Re: Breadcrumbs

Are you sure you copied all the code from the other site?

The code you're using won't put anything where you want it because it's not using a defined exit hook. In other words, there's no 
function main_top(){... to place the breadcrumbs.

this:

function ttg_crumb( $page_name ) {
	echo '<ul class="breadcrumbs"><li class="fa_pseudo" itemscope itemtype="http://data-vocabulary.org/Breadcrumb"><a href="/" itemprop="url"><span itemprop="title">Home</span></a></li><li class="fa_pseudo" itemscope itemtype="http://data-vocabulary.org/Breadcrumb"><span itemprop="title">'. $page_name .'</span></li></ul>';
}	

doesn't do anything by itself other than define a function that needs to be used inside one of the user exits.


Rod 
Just a user with way too much time on his hands.
www.rodbarbee.com
ttg-tips.com, Backlight 2/3 test site

Offline

#14 2018-12-16 04:50:05

pideja
Member
From: Montreal
Registered: 2013-02-26
Posts: 1,299

Re: Breadcrumbs

I now have identical php files in both sites. No change: the tnm site has three items in the breadcrumbs and the duc site has four...

Offline

#15 2018-12-16 05:00:25

pideja
Member
From: Montreal
Registered: 2013-02-26
Posts: 1,299

Re: Breadcrumbs

They all have titles in the TITLE box in LR.

Offline

#16 2018-12-16 05:06:21

pideja
Member
From: Montreal
Registered: 2013-02-26
Posts: 1,299

Re: Breadcrumbs

The code you're using won't put anything where you want it because it's not using a defined exit hook. In other words, there's no function main_top(){... to place the breadcrumbs. It doesn't do anything by itself other than define a function that needs to be used inside one of the user exits.

That might very well be, but one site still has three breadcrumbs and the other ...four! On the same php file.

Offline

#17 2018-12-16 05:08:39

rod barbee
Moderator
From: Port Ludlow, WA USA
Registered: 2012-09-24
Posts: 17,830
Website

Re: Breadcrumbs

what about the code itself. Are you using the main_top() or the single_top() hook to place the breadcrumbs?


Rod 
Just a user with way too much time on his hands.
www.rodbarbee.com
ttg-tips.com, Backlight 2/3 test site

Offline

#18 2018-12-16 05:09:34

rod barbee
Moderator
From: Port Ludlow, WA USA
Registered: 2012-09-24
Posts: 17,830
Website

Re: Breadcrumbs

pideja wrote:

The code you're using won't put anything where you want it because it's not using a defined exit hook. In other words, there's no function main_top(){... to place the breadcrumbs. It doesn't do anything by itself other than define a function that needs to be used inside one of the user exits.

That might very well be, but one site still has three breadcrumbs and the other ...four! On the same php file.

I think anyone troubleshooting this will need to see all the code in that file.


Rod 
Just a user with way too much time on his hands.
www.rodbarbee.com
ttg-tips.com, Backlight 2/3 test site

Offline

#19 2018-12-16 05:15:58

pideja
Member
From: Montreal
Registered: 2013-02-26
Posts: 1,299

Re: Breadcrumbs

Here it is:

<?php
/*
 *  TTG Core Elements "PHPlugins" User Hooks v1.2 - initialization mainline
 *
 *  developed by john bishop images (http://johnbishopimages.com)
 *  for Matthew Campagna of The Turning Gate (http://theturninggate.net)
 *
 */

function user_load($style, $path) {
  $g_tsvrl = explode(' ', $style); // Extract gallery type
  define ('G_STYLE', strtoupper($g_tsvrl[1])); // and set global for later
  $g_path = str_ireplace('\\','/',$path); // change \ to /
  $chunks = explode('/',$g_path); // and put into array
  define ('G_PATH', strtoupper($chunks[count($chunks)-2])); // gallery folder name is second to last
  //define ( 'TTG_SITE', ''); // set new site root for navigation, resources, etc.
}

if (defined('BACKLIGHT_HOOK')) {
	require_once(realpath(BACKLIGHT_HOOK).'/modules/module-designer/application/helpers/APHPlugins.php');
}

class PHPlugins extends APHPlugins
{
 


// END /**/

// SET USER FUNCTIONS BELOW
// ****************************************************************************************************


function ttg_crumb( $page_name ) {
	echo '<ul class="breadcrumbs"><li class="fa_pseudo" itemscope itemtype="http://data-vocabulary.org/Breadcrumb"><a href="/" itemprop="url"><span itemprop="title">Home</span></a></li><li class="fa_pseudo" itemscope itemtype="http://data-vocabulary.org/Breadcrumb"><span itemprop="title">'. $page_name .'</span></li></ul>';
}	
	
} // END /**/

 ?>

Offline

#20 2018-12-16 06:22:04

rod barbee
Moderator
From: Port Ludlow, WA USA
Registered: 2012-09-24
Posts: 17,830
Website

Re: Breadcrumbs

Since ttg_crumb isn’t a Backlight function (If I remember, it’s a helper function that Daniel created to help put breadcrumbs on non-album pages), your code shouldn’t be doing anything as far as I can see.
Try disabling phplugins for those page templates and see what happens.


Rod 
Just a user with way too much time on his hands.
www.rodbarbee.com
ttg-tips.com, Backlight 2/3 test site

Offline

#21 2018-12-16 22:34:09

pideja
Member
From: Montreal
Registered: 2013-02-26
Posts: 1,299

Re: Breadcrumbs

Your suggestion that the php code relating to breadcrumbs does nothing has merit: I turned off php in the page template>advance setup>page setup>Extensibility>Custom Stylesheet>PHPlugins>disabled

Whether the php is disabled or not has no change on the page.

Also, I renamed the function to "breadcrumbs" as per examples found on the net. No success.

And it still does not explain why one site does not display like the other using the exact same php file.

Last edited by pideja (2018-12-16 22:38:02)

Offline

#22 2018-12-16 22:48:22

rod barbee
Moderator
From: Port Ludlow, WA USA
Registered: 2012-09-24
Posts: 17,830
Website

Re: Breadcrumbs

pideja wrote:

Your suggestion that the php code relating to breadcrumbs does nothing has merit: I turned off php in the page template>advance setup>page setup>Extensibility>Custom Stylesheet>PHPlugins>disabled

Whether the php is disabled or not has no change on the page.

Also, I renamed the function to "breadcrumbs" as per examples found on the net. No success.

And it still does not explain why one site does not display like the other using the exact same php file.

“Breadcrumbs” us not a phplugins user hook. Those are all listed in the phplugins file.


If you’ve disabled phplugins and see no change, the the phplugins file is not the problem.

For troubleshooting purposes, I suggest leaving phplugins disabled on both sites for now.


Rod 
Just a user with way too much time on his hands.
www.rodbarbee.com
ttg-tips.com, Backlight 2/3 test site

Offline

#23 2018-12-16 23:09:46

pideja
Member
From: Montreal
Registered: 2013-02-26
Posts: 1,299

Re: Breadcrumbs

The plot thickens: I disabled the php in the "duc" site but I found that the php file in the "tnm" site was already disabled!

So this means that the php files on both sites, as written, have no effect on the pages.

So, the setting is either in the CSS or in Backlight.

Offline

#24 2018-12-17 00:13:29

rod barbee
Moderator
From: Port Ludlow, WA USA
Registered: 2012-09-24
Posts: 17,830
Website

Re: Breadcrumbs

Is phplugins currently disabled on both sites?


Rod 
Just a user with way too much time on his hands.
www.rodbarbee.com
ttg-tips.com, Backlight 2/3 test site

Offline

#25 2018-12-17 02:00:58

pideja
Member
From: Montreal
Registered: 2013-02-26
Posts: 1,299

Re: Breadcrumbs

Yes, the plugins are disabled on both sites.

In case you need them, here are the URLs: pideja.ca/duc and pideja.ca/tnm

Would you need access to the Backlight settings?

Last edited by pideja (2018-12-17 02:25:49)

Offline

Board footer

Powered by FluxBB