Es werden ausschließlich für die Funktion des Forums notwendige Cookies verwendet!

Unsere Datenschutzerklärung


Wie komme ich an die aktuelle URL für share static buttons
Ergebnis 1 bis 10 von 10

Thema: Wie komme ich an die aktuelle URL für share static buttons

  1. #1
    Benutzer
    Registriert seit
    24.11.2015
    Beiträge
    88
    Downloads
    35
    Uploads
    0

    Wie komme ich an die aktuelle URL für share static buttons

    Ich möchte verschiedene Share Buttons (FB,Twitter, googleplus usw.) im Shop einbringen. Da ich aber den Shop nicht weiter verlangsamen möchte, würde ich gerne static buttons einfügen welche wie folgt aussehen:

    HTML-Code:
    <a class="facebook" onClick="window.open('[B]URL[/B]','sharer','toolbar=0,status=0,width=580,height=500');" href="javascript: void(0)"><i class="fa fa-thumbs-o-up" aria-hidden="true"></i><div class="displayno"> &nbsp;Like</div></a>
    Das Problem wie komme ich an die aktuelle URL ?
    Und eventuell auch an die description ?

    Einfügen möchte ich die Buttons in die index.html.

  2. #2
    Erfahrener Benutzer Avatar von rf-musik
    Registriert seit
    19.06.2015
    Ort
    Schleswig Holstein im hohen Norden
    Beiträge
    587
    Downloads
    282
    Uploads
    0

    AW: Wie komme ich an die aktuelle URL für share static buttons

    Hallo,
    so wie bei uns?
    Sie sind Kreativ? - alles für Scrapbooking, Kartengestalltung, Stempel & Stanzen
    www.stampcorner.de?2

    meine Private Hobby Seite: www.automatengeschichte.de

    Shop Version 3.12.0.2 StyleEdit 3

  3. #3
    Benutzer
    Registriert seit
    24.11.2015
    Beiträge
    88
    Downloads
    35
    Uploads
    0

    AW: Wie komme ich an die aktuelle URL für share static buttons

    Zitat Zitat von rf-musik Beitrag anzeigen
    Hallo,
    so wie bei uns?
    Hallo rf-musik,
    bin schon total beim verzweifeln -.-
    Gott sei dank antwortet jemand =).

    Nein an sich brauch ich nur die aktuelle URL der Seite.
    wenn ich z.b. auf "https://shopdomain/de/katergorie/site1.html" bin brauch ich genau diese url "https://shopdomain/de/katergorie/site1.html" aber natürlich auf jeder Seite die momentane URL.
    Die würde ich dann oben im code Beispiel bei "URL" einfügen.

    Habe schon etwas rumprobiert {$CURRENT_URL} usw (bis ich auf eine funktionierende variable stoßen würde) aber nicht mal {$HOME_URL} scheint zu funktionieren.

    Das Codebeispiel oben kommt unter shop/templates/honeygrid/index.html im wrapper ganz am Ende.

  4. #4
    Benutzer
    Registriert seit
    24.11.2015
    Beiträge
    88
    Downloads
    35
    Uploads
    0

    AW: Wie komme ich an die aktuelle URL für share static buttons

    Keiner eine Idee ??
    Ich komm nicht drauf.

  5. #5
    Erfahrener Benutzer Avatar von rf-musik
    Registriert seit
    19.06.2015
    Ort
    Schleswig Holstein im hohen Norden
    Beiträge
    587
    Downloads
    282
    Uploads
    0

    AW: Wie komme ich an die aktuelle URL für share static buttons

    hast Du im Gambio Admin - SEO - und dann unter " Social Bookmarking" geschaut !?
    Sie sind Kreativ? - alles für Scrapbooking, Kartengestalltung, Stempel & Stanzen
    www.stampcorner.de?2

    meine Private Hobby Seite: www.automatengeschichte.de

    Shop Version 3.12.0.2 StyleEdit 3

  6. #6
    Benutzer
    Registriert seit
    24.11.2015
    Beiträge
    88
    Downloads
    35
    Uploads
    0

    AW: Wie komme ich an die aktuelle URL für share static buttons

    Zitat Zitat von rf-musik Beitrag anzeigen
    hast Du im Gambio Admin - SEO - und dann unter " Social Bookmarking" geschaut !?
    Das hilft mir leider auch nicht weiter. Dort kann man nur Symbole mit fixe urls anzeigen lassen.

    Ich will aber ein static share button machen, welcher auf jeder Unterseite die jeweilige url besitzt. Keine fixe sondern die aktuelle url der Unterseite.

  7. #7
    Benutzer
    Registriert seit
    24.11.2015
    Beiträge
    88
    Downloads
    35
    Uploads
    0

    AW: Wie komme ich an die aktuelle URL für share static buttons

    Ich habe es jetzt irgendwie hinbekommen, bin aber alles andere als stolz oder zufrieden mit dieser Lösung.

    Nämlich wie bereits in einem anderen Thread von mir beschrieben würden sich die urls bereits in der Funktion (function.seo_tags.php) befinden als $url und $urlalt.
    Habe auch schon 100 fach versucht diese $url variable irgendwie auszugeben mit {$url} usw.
    Habe auch versucht in der Funktion
    $GLOBAL['currenturl'] = $url;
    oder
    define('currenturl') = $url;
    zu definieren und diese irgendwie auszugeben, weil die variablen in der Funktion sonst nicht außerhalb verfügbar sind.

    Ich habe nur total kein Plan wie ich das machen kann, verstehe das gambio cms vom Aufbau einfach nicht. Woher die {$variable} gezaubert werden oder wie solche definiert werden müssen.



    Dann zu meiner Lösung:
    Ich habe festgestellt dass Funktionen wie function.seo_tags.php einfach aufgeruft werden indem das "function." und ".php" weggenommen wird.

    So habe ich diese Datei kopiert in function.momurl.php unbenannt und abgeändert:


    Code:
    function smarty_function_momurl($params, &$smarty)
    {
    	$seoBoost     = MainFactory::create_object('GMSEOBoost', [], true);
    	$languageCode = new LanguageCode(new StringType(strtoupper($_SESSION['language_code'])));
    	$url          = '';
    	$html         = '';
    	$robots       = 'index,follow';
    	
    	$requestUri = gm_get_env_info('REQUEST_URI');
    	$getParams  = parse_url($requestUri, PHP_URL_QUERY);
    	parse_str($getParams, $getArray);
    	$getArray = array_keys($getArray);
    	
    	$languageProvider = MainFactory::create('LanguageProvider', StaticGXCoreLoader::getDatabaseQueryBuilder());
    	$activeCodes      = $languageProvider->getActiveCodes();
    	
    	if(isset($GLOBALS['actual_products_id']) && !empty($GLOBALS['actual_products_id']))
    	{
    		/** @var ProductReadService $productReadService */
    		$productReadService = StaticGXCoreLoader::getService('ProductRead');
    		$product            = $productReadService->getProductById(new IdType((int)$GLOBALS['actual_products_id']));
    		
    		if($seoBoost->boost_products)
    		{
    			$url = xtc_href_link($seoBoost->get_boosted_product_url($GLOBALS['actual_products_id']));
    		}
    		else
    		{
    			try
    			{
    				$productLinkParams = xtc_product_link($GLOBALS['actual_products_id'], $product->getName($languageCode),
    				                                      $product->getUrlKeywords($languageCode),
    				                                      $_SESSION['languages_id']);
    			}
    			catch(InvalidArgumentException $e)
    			{
    				$productLinkParams = xtc_product_link($GLOBALS['actual_products_id'], '', '',
    				                                      $_SESSION['languages_id']);
    			}
    			
    			$url = xtc_href_link(FILENAME_DEFAULT, $productLinkParams);
    		}
    		
    		if($robots === 'index,follow' && $activeCodes->count() > 1)
    		{
    			foreach($activeCodes as $code)
    			{
    				$langCode   = new LanguageCode(new StringType($code->asString()));
    				$languageId = $languageProvider->getIdByCode($langCode);
    				
    				if($languageId != $_SESSION['languages_id'])
    				{
    					if($seoBoost->boost_products)
    					{
    						$altUrl = xtc_href_link($seoBoost->get_boosted_product_url($GLOBALS['actual_products_id'], '',
    						                                                           $languageId));
    					}
    					else
    					{
    						try
    						{
    							$productLinkParams = xtc_product_link($GLOBALS['actual_products_id'],
    							                                      $product->getName($langCode),
    							                                      $product->getUrlKeywords($langCode), $languageId);
    						}
    						catch(InvalidArgumentException $e)
    						{
    							continue;
    						}
    						
    						$altUrl = xtc_href_link(FILENAME_DEFAULT, $productLinkParams);
    					}
    										
    					if($altUrl !== $url)
    					{
    						if($html === '')
    						{
    							$html .= htmlspecialchars($url);
    						}
    							 
    					}
    				}
    			}
    		}
    	}
    	elseif(isset($_GET['cat']) && isset($GLOBALS['current_category_id']) && !empty($GLOBALS['current_category_id']))
    	{
    		/** @var CategoryReadService $categoryReadService */
    		$categoryReadService = StaticGXCoreLoader::getService('CategoryRead');
    		$category            = $categoryReadService->getCategoryById(new IdType((int)$GLOBALS['current_category_id']));
    		
    		if($seoBoost->boost_categories)
    		{
    			$url = xtc_href_link($seoBoost->get_boosted_category_url($GLOBALS['current_category_id']));
    		}
    		else
    		{
    			try
    			{
    				$categoryLinkParams = xtc_category_link($GLOBALS['current_category_id'],
    				                                        $category->getName($languageCode),
    				                                        $category->getUrlKeywords($languageCode),
    				                                        $_SESSION['languages_id']);
    			}
    			catch(InvalidArgumentException $e)
    			{
    				$categoryLinkParams = xtc_category_link($GLOBALS['current_category_id'], '', '', 
    				                                        $_SESSION['languages_id']);
    			}
    			
    			$url = xtc_href_link(FILENAME_DEFAULT, $categoryLinkParams);
    		}
    		
    		if($robots === 'index,follow' && $activeCodes->count() > 1)
    		{
    			foreach($activeCodes as $code)
    			{
    				$langCode   = new LanguageCode(new StringType($code->asString()));
    				$languageId = $languageProvider->getIdByCode($langCode);
    				
    				if($languageId != $_SESSION['languages_id'])
    				{
    					if($seoBoost->boost_categories)
    					{
    						$altUrl = xtc_href_link($seoBoost->get_boosted_category_url($GLOBALS['current_category_id'],
    						                                                            $languageId));
    					}
    					else
    					{
    						try
    						{
    							$categoryLinkParams = xtc_category_link($GLOBALS['actual_products_id'],
    							                                        $category->getName($langCode),
    							                                        $category->getUrlKeywords($langCode), $languageId);
    						}
    						catch(InvalidArgumentException $e)
    						{
    							continue;
    						}
    						
    						$altUrl = xtc_href_link(FILENAME_DEFAULT, $categoryLinkParams);
    					}
    					
    					
    					if($altUrl !== $url)
    					{
    						if($html === '')
    						{
    							$html .= htmlspecialchars($url);
    						}
    											
    					}
    				}
    			}
    		}
    		
    	}
    	elseif(isset($_GET['coID']) && $activeCodes->count() > 1)
    	{
    		$coID = (int)$_GET['coID'];
    		
    		if($seoBoost->boost_content)
    		{
    			$contentId = $seoBoost->get_content_id_by_content_group($coID);
    			$url       = xtc_href_link($seoBoost->get_boosted_content_url($contentId));
    		}
    		else
    		{
    			$url = xtc_href_link(FILENAME_CONTENT, 'coID=' . $coID);
    		}
    		
    		if($robots === 'index,follow' && $activeCodes->count() > 1)
    		{
    			foreach($activeCodes as $code)
    			{
    				$langCode   = new LanguageCode(new StringType($code->asString()));
    				$languageId = $languageProvider->getIdByCode($langCode);
    				
    				if($languageId != $_SESSION['languages_id'])
    				{
    					if($seoBoost->boost_content)
    					{
    						$contentId = $seoBoost->get_content_id_by_content_group($coID, $languageId);
    						$altUrl    = xtc_href_link($seoBoost->get_boosted_content_url($contentId, $languageId));
    					}
    					else
    					{
    						$altUrl = xtc_href_link(FILENAME_CONTENT, 'coID=' . $coID);
    					}
    										
    					
    					if($altUrl !== $url)
    					{
    						if($html === '')
    						{
    							$html .= htmlspecialchars($url);
    						}
    														 
    					}
    				}
    			}
    		}
    	}
    
    	if (empty($html)){
    		$html = 'SHOPMAINURL';
    		
    	}
    	
    	return $html;
    }

    Nun kann ich die url mit {momurl} im html ausgeben.
    Allerdings wie sich bereits jeder denken kann, muss diese Funktion für jede Url jedes mal ausgeführt werden 4 mal in meinem Fall + ist das eine sehr uneffiziente Möglichkeit um eine url zu bekommen, soviel Codezeilen für eine so einfache Lösung.

    Deshalb wäre ich froh wenn mir jemand helfen könnte. Unser Shop ist so schon langsam genug, diese Lösung macht es bestimmt nicht besser oO.

    Im Anhang das Ergebnis.
    Miniaturansichten angehängter Grafiken Miniaturansichten angehängter Grafiken Unbenannt.jpg  

  8. #8
    Erfahrener Benutzer Avatar von rf-musik
    Registriert seit
    19.06.2015
    Ort
    Schleswig Holstein im hohen Norden
    Beiträge
    587
    Downloads
    282
    Uploads
    0

    AW: Wie komme ich an die aktuelle URL für share static buttons

    Das ist doch Super!
    Sie sind Kreativ? - alles für Scrapbooking, Kartengestalltung, Stempel & Stanzen
    www.stampcorner.de?2

    meine Private Hobby Seite: www.automatengeschichte.de

    Shop Version 3.12.0.2 StyleEdit 3

  9. #9
    Benutzer
    Registriert seit
    24.11.2015
    Beiträge
    88
    Downloads
    35
    Uploads
    0

    AW: Wie komme ich an die aktuelle URL für share static buttons

    Zitat Zitat von rf-musik Beitrag anzeigen
    Das ist doch Super!
    Ja super dass es funktioniert, aber effizient nicht besonders .

  10. #10
    Benutzer
    Registriert seit
    24.11.2015
    Beiträge
    88
    Downloads
    35
    Uploads
    0

    AW: Wie komme ich an die aktuelle URL für share static buttons

    Habs endlich gefunden...
    Aktuelle URL:
    {page_url}

    so einfach ...

    Hatte das sogar einmal versucht, nur da hatte ich vergessen den cache zu leeren...

    Aber ich kann die andere Funktion eh gebrauchen da ich mir selbst eine Sprachauswahl basteln muss.

Ähnliche Themen

  1. Antworten: 0
    Letzter Beitrag: 08.11.2016, 17:05
  2. Gambio 3 und aktuelle JTL WaWi
    Von strommi im Forum Gambio GX Adminbereich
    Antworten: 10
    Letzter Beitrag: 19.08.2016, 17:50
  3. Update von v2.0.13.3 auf aktuelle Version
    Von Milly im Forum Shopsoftware
    Antworten: 1
    Letzter Beitrag: 27.11.2015, 17:41
  4. Hilfe Anfängerfrage wie komme ich ins Adminmenü
    Von soundmike im Forum Gambio GX Off Topic
    Antworten: 4
    Letzter Beitrag: 03.11.2012, 10:56

Stichworte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •