Vai al contenuto

Titoli pagine diverse

Featured Replies

Inviato
  • Admin

Ho un'altro problema (che novità) praticamente dovrei far in modo che i tag:

   

<title></title>

<meta name="description" content="">

 

Io ho creato un block chiamato header con il contenuto:

<!DOCTYPE html>	<html lang="it">  <head>    <meta http-equiv="X-UA-Compatible" content="IE=edge" />    <meta charset="utf-8">    <meta name="viewport" content="width=device-width, initial-scale=1">    <title></title>    <meta name="description" content="">    <meta name="author" content="">    <link rel="icon" href="{parse ipcmedia="/bootstrap/favicon.ico"}"><link rel="stylesheet" type="text/css" media="screen,print" href="http://gamelite.net/public/min/index.php?ipbv=c20c6a600c2ad5e22f54cbcc9ad13a57&f=public/style_css/css_5/calendar_select.css,public/style_css/css_5/ipb_common.css,public/style_css/css_5/ipb_styles.css"><script type="text/javascript" src="https://apis.google.com/js/plusone.js"></script>    <link href="{parse ipcmedia="/bootstrap/bootstrap.min.css"}" rel="stylesheet">    <link href="{parse ipcmedia="/bootstrap/offcanvas.css"}" rel="stylesheet">    <link href="{parse ipcmedia="/bootstrap/imgeffect.css"}" rel="stylesheet">    <script src="{parse ipcmedia="/bootstrap/ie_emulation_modes_warning.js"}"></script>    <script src="{parse ipcmedia="/bootstrap/ie10_viewport_bug_workaround.js"}"></script><link rel="apple-touch-icon" href="{parse ipcmedia="/bootstrap/favicon_retina.jpg"}"/>    <!--[if lt IE 9]><script src="{parse ipcmedia="/bootstrap/view_source_getbootstrap.com_assets_js_ie8_responsive_file_warning.js"}"></script><![endif]-->    <!--[if lt IE 9]><script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script><script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script><![endif]-->  </head><body><script>(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)})(window,document,'script','//www.google-analytics.com/analytics.js','ga');ga('create','UA-53382440-1','auto');ga('send','pageview');</script>

e in ogni pagina richiamo 

{parse block="header"}

Quindi... avete un'idea per poter far si che, in home page il titolo è GamElite, poi se si visualizza un'articolo il titolo diventa: Nome Articolo - GamElite?

Inviato
$this->registry->output->setTitle( $title." - ".$this->settings['board_name'] );

questo va usato, anche tra parentesi graffe dovrebbe andare...

$TITOLO = '{ccs special_tag="page_title"}';//non ho testato, funziona per le pagine invece per i singoli articoli occorre altro.$title = $TITOLO ? $TITOLO." - ".$this->settings['board_name'] : $this->settings['board_name'];$this->registry->output->setTitle( $title );

fonte, codice di ip.content precisamente... protected _setPageTitle($slugs=array(), $area=1), \admin\applications_addon\ips\ccs\sources\databases.php

....if( $title ){    $title    = str_replace( '{board_name}',         $this->settings['board_name'],         $title );    $title    = str_replace( '{website_name}',     $this->settings['home_name'],         $title );    $title    = str_replace( '{page_name}',         $this->page['page_title'] ? $this->page['page_title'] : $this->page['page_name'],             $title );    $title    = str_replace( '{database_name}',     $this->database['database_name'],     $title );    $title    = str_replace( '{category_name}',     $slugs['category_name'],             $title );    $title    = str_replace( '{record_name}',     $slugs['record_name'],                 $title );}else{    $title    = count($slugs) ? implode( ' - ', $slugs ) . ' - ' : '';    $title    .= ( $this->page['page_title'] ? $this->page['page_title'] : $this->page['page_name'] ) . ' - ' . ( $this->settings['home_name'] ? $this->settings['home_name'] : $this->settings['board_name'] );}$this->registry->output->setTitle( $title );
Inviato
  • Autore
  • Admin

Ciao e grazie Ale, ho provato come da te suggerito e purtroppo non funziona, mi restituisce pagina bianca.

Inviato

Ciao e grazie Ale, ho provato come da te suggerito e purtroppo non funziona, mi restituisce pagina bianca.

puoi riprovare attivando 

ini_set('display_errors',1);

nel conf_global.php?

Inviato
  • Autore
  • Admin

quando metto:

 

<title>{$this->registry->output->setTitle( $title." - ".$this->settings['board_name'] );}</title>
 
mi da l'errore, prima invece dava direttamente pagina bianca

 

The contents that you submitted would create a parser error when compiled into appropriate PHP code. Please verify any PHP code, template tags and template plugin tags (such as parse blocks) and resubmit your data.
Inviato

 

quando metto:

 

<title>{$this->registry->output->setTitle( $title." - ".$this->settings['board_name'] );}</title>
 
mi da l'errore, prima invece dava direttamente pagina bianca

 

The contents that you submitted would create a parser error when compiled into appropriate PHP code. Please verify any PHP code, template tags and template plugin tags (such as parse blocks) and resubmit your data.

 

<title>{$this->registry->output->setTitle( $title." - ".$this->settings['board_name'] );}</title>

è sbagliato...

<title>{$this->registry->output->setTitle( $title." - ".$this->settings['board_name'] )}</title>

cosi va già meglio... fammi sapere se funziona.

Inviato
  • Autore
  • Admin

continua a dare: The contents that you submitted would create a parser error when compiled into appropriate PHP code. Please verify any PHP code, template tags and template plugin tags (such as parse blocks) and resubmit your data.

Inviato

ecco immaginavo, il problema è che non è possibile concatenare più variabili in questo modo:

$title." - ".$this->settings['board_name']

bisogna definire una nuova variabile... i tag <php> funzionano nei template non nelle pagine!!

<php>//$r è l'array con tutti i dati dell'articolo!$title = $r['title'] ? $r['title']." - ".$this->settings['board_name'] : $this->settings['board_name'];$this->registry->output->setTitle( $title );</php>
Inviato
  • Autore
  • Admin

Ale, ho fatto una ricerca e ho trovato questa cosa:

http://community.invisionpower.com/topic/361163-how-do-page-titles-even-work-anymore/

 

Non c'ho capito molto, però ti spiego quello che ho capito:

 

Aprire il file conf_global.php e inserire :

define( 'CCS_PAGE_TITLE_HOME', '{page_name}' );define( 'CCS_PAGE_TITLE_CAT', '{page_name} - {category_name}' );define( 'CCS_PAGE_TITLE_RECORD', '{page_name} - {category_name} - {record_name}' );

Poi però dice di installare l'hook, lo installo appaiono nuove impostazioni quando si va a modificare una pagina ma non cambia nulla.. :S

Inviato

non occorrono hook, prima occorre far funzionare le impostazioni del database :S

 

The page title is generated in the method databaseBuilder::_setPageTitle() in admin/applications_addon/ips/ccs/sources/databases.php. You can write a hook to overload this method, allowing you complete control over how the page title is generated. Code that calls this method will pass in the first parameter as an array of data to push into the page title (in the order it is intended to display), and the second parameter is a flag indicating which view is being shown (1=home, 2=category, 3=record, 4=category listing for articles). Utilizing a hook, your possibilities are only limited by your imagination.

http://www.invisionpower.com/support/guides/_/advanced-and-developers/ipcontent/database-page-titles-r213

 

poi occorre fare un recache credo :unsure: e togli dall'header <title></title> perchè può creare "conflitti"

ps: prova a semplificare il blocco "header" con <html><head></head><body>

cosi se non funziona è più probabile che siano le impostazioni degli articoli

Per favore accedi per lasciare un commento

Potrai lasciare un commento dopo aver effettuato l'accesso

Accedi Ora

Chi sta navigando 0

  • Nessun utente registrato visualizza questa pagina.

Informazioni importanti

Abbiamo inserito dei cookies nel tuo dispositivo per aiutarti a migliorare la tua esperienza su questo sito. Puoi modificare le impostazioni dei cookie, altrimenti puoi accettarli cliccando su continua. to insert a cookie message.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.