Demo

Probiere ClanSphere aus und teste daran herum. Demo


Antworten: 12
Seite [1]
maGGiTech


Rock the board





Beiträge: 53
# Thema - 05.06.2014 um 10:47 Uhr
Hi, ich wollte mein Slider und Top Match für bestimmte Aufrufe anzeigen lassen und für andere sollen sie nicht angezeigt werden.

Der Designer der die Grundstruktur von meinem Template gemacht hat, aus welchem ich jetzt aber mein eigenes mache hat dies bereits für die Gallerie gemacht:

PHP Script +-
 
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
1. / 2. / ... 
 <?PHP
// ClanSphere 2010 - www.clansphere.net
// $Id$

$get['mod'] = empty($_GET['mod']) ? $_GET['mod'];
$get['action'] = empty($_GET['action']) ? $_GET['action'];

if(
$get['mod'] == 'news' and $get['action'] == 'recent' or empty($get['mod'])) {
$cs_lang cs_translate('gallery');

$data = array();

$cs_option cs_sql_option(__FILE__,'gallery');
$access_id $account['access_gallery'];

$from 'gallery gal INNER JOIN {pre}_folders fol ON gal.folders_id = fol.folders_id';
$select 'gal.gallery_id AS gallery_id, gal.gallery_titel AS gallery_titel, fol.folders_name AS folders_name';
$where "gal.gallery_access < '" $access_id "' AND gal.gallery_status = '1'"
$order 'gal.gallery_id DESC';
$cs_gallery cs_sql_select(__FILE__,$from,$select,$where,$order,0,$cs_option['max_navlist']);
$gallery_loop count($cs_gallery);

$data['gallery'] = array();

for(
$run=0$run<$gallery_loop$run++) {
  
$img cs_html_img('mods/gallery/image.php?thumb=' $cs_gallery[$run]['gallery_id']);
  
$title $cs_gallery[$run]['folders_name'] . ' - ' $cs_gallery[$run]['gallery_titel'];
  
$short strlen($title) > 25 cs_substr($title,0,25).'..' $title;
  
$data['gallery'][$run]['img'] = $img;
  
$data['gallery'][$run]['name'] = cs_secure($short);
  
$data['gallery'][$run]['id'] = $cs_gallery[$run]['gallery_id'];
}

echo 
cs_subtemplate(__FILE__,$data,'gallery','navlist_new');
}


Zeile 5 bis 11 :-? glaube ich Laie das wenn der Mod News und Recent oder er leer ist ??? das dann die Gallery angezeigt wird. Für alle anderen Mods nicht. Das klappt auch für die Gallerie, jedoch wollte ich das so oder so ähnlich auch für Topmatch und Slider machen.
Wenn man übrigens Zeile 5 auskommentiert und stattdessen das hier einfügt

 
1.
1. / 2. / ... 
 $get['mod'] = 0;


dann wird sie wieder für alle angezeigt. Ich dachte das ich dieses Prinzip vllt. mit nem Copy und Paste auch einfach beim Topmatch und beim Slider anwenden kann. Ging aber nicht so einfach leider ...

Wie habt ihr das denn gemacht? Hab schon einige Seite hier gesehen wo bestimmte Elemente nur auf bestimmte Links angezeigt werden.


------------------
Mutligaming Community team-pheenix.de
Inaktiv
maGGiTech
Thread-Ersteller


Rock the board





Beiträge: 53
# Antwort: 1 - 06.06.2014 um 14:28 Uhr
wie habt ihr das gemacht?


------------------
Mutligaming Community team-pheenix.de

Inaktiv
|
palle ClanSphere Team

Supporter
Supporter




Beiträge: 3073
# Antwort: 2 - 06.06.2014 um 15:38 Uhr
Mit verschiedenen Layouts.


------------------
I like the part where it says 'nyan'



Inaktiv
|
_Locke_


Going for pro





Beiträge: 537
# Antwort: 3 - 06.06.2014 um 16:02 Uhr
Schau dir das mal an

http://www.csphere.eu/index/codepaste/view/id/178

Würde als Laie nicht an den php Dateien im Mod Verzeichnis groß rumändern. Lieber einfach verschiedene Layouts nehmen wie im Link beschrieben.


Zuletzt editiert von _Locke_ am 06.06.2014 um 16:04 Uhr (3x Editiert)
Inaktiv
|
maGGiTech
Thread-Ersteller


Rock the board





Beiträge: 53
# Antwort: 4 - 06.06.2014 um 18:25 Uhr
oh k cool ich versuche das mal zu verstehen... geht das standartmäßig auch mit mod_rewrite oder muss ich da dieses var_dump($get); am ende einfügen?


------------------
Mutligaming Community team-pheenix.de

Inaktiv
|
Deaktiviert

Supporter
Supporter



Beiträge: 1287
# Antwort: 5 - 07.06.2014 um 12:20 Uhr
.....Was möchtest du bitte mit var_dump machen? Das ist ein Debug Befehl für Variablen.

Das sollte auch mit Mod Rewrite gehen, steht in der Erklärung.


Inaktiv
|
maGGiTech
Thread-Ersteller


Rock the board





Beiträge: 53
# Antwort: 6 - 07.06.2014 um 14:17 Uhr
öhh ich hab die Schleifen unten alle mal auskommentiert und wollte schaun ob die Seite da noch funktioniert und sie ging dann nicht mehr, deswegen kam mir die Frage auf.

 
1.
2.
3.
4.
1. / 2. / ... 
 
if(!empty($get['mod']) AND $get['mod'] == 'board')
    
$htm_file 'board.htm'// example for module


heißt dass das board.htm angezeigt werden soll, wenn board angeklickt wird? ich hab das mit so ausprobiert geht aber net:

 
1.
2.
3.
1. / 2. / ... 
 if(!empty($get['mod']) AND $get['mod'] == 'news' AND !empty($get['action']) //AND $get['action'] == 'recent') // example for module and action
    
$htm_file 'slider.htm';


------------------
Mutligaming Community team-pheenix.de

Inaktiv
|
Deaktiviert

Supporter
Supporter



Beiträge: 1287
# Antwort: 7 - 07.06.2014 um 16:13 Uhr
Das heißt wenn du auf dem Modul board bist wird die board.htm gewählt, ja.

"Geht net" ist leider keiner Fehlerbeschreibung, zeig mal deinen kompletten Code.


Inaktiv
|
maGGiTech
Thread-Ersteller


Rock the board





Beiträge: 53
# Antwort: 8 - 07.06.2014 um 16:24 Uhr
 
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
1. / 2. / ... 
<?php
// ClanSphere 2010 - www.clansphere.net
// $Id$

if(!empty($_GET['params'])){
    
$params explode('/'$_GET['params']);
    foreach(
$params AS $key => $value)
    {
        if(
$key != 0)
        {
            if(
$key == 1)
                   
$get['mod']        =  $value;
            elseif(
$key == 2)
                
$get['action']        = $value;
            elseif(
$key%2==0)
                
$get[$params[$key-1]] = $value;
        }
    }
}else{
    
$get $_GET;
}

if(!empty(
$get['mod']) AND $get['mod'] == 'news' AND !empty($get['action']) //AND $get['action'] == 'recent') // example for module and action
    
$htm_file 'slider.htm';
        else
            
$htm_file 'index.htm'// Default Template



$cs_main = array('init_sql' => true'init_tpl' => true'tpl_file' => $htm_file);

require_once 
'system/core/functions.php';

cs_init($cs_main);


wie mach ich das denn das bei den anderen das nicht angezeigt wird?


------------------
Mutligaming Community team-pheenix.de

Zuletzt editiert von maGGiTech am 07.06.2014 um 16:33 Uhr (1x Editiert)
Inaktiv
|
Deaktiviert

Supporter
Supporter



Beiträge: 1287
# Antwort: 9 - 07.06.2014 um 20:41 Uhr
Deine if clause:

Sofern ein Modul in der URL gesetzt ist und dieses "news" ist, sowie das die Action nicht empty ist.

Sicher, dass du das möchtest?


Inaktiv
|
maGGiTech
Thread-Ersteller


Rock the board





Beiträge: 53
# Antwort: 10 - 07.06.2014 um 20:43 Uhr
ka ich möchte das es nur angezeigt wird unter news


------------------
Mutligaming Community team-pheenix.de

Inaktiv
|
Deaktiviert

Supporter
Supporter



Beiträge: 1287
# Antwort: 11 - 07.06.2014 um 22:59 Uhr
Wenn du mir sagst, dass du keine Ahnung ahst was du möchtest, bin ich raus.


Inaktiv
|
maGGiTech
Thread-Ersteller


Rock the board





Beiträge: 53
# Antwort: 12 - 07.06.2014 um 23:17 Uhr
habe ich doch geschrieben, slider soll nur für news angezeigt werden und sonst nicht, ich verstehe den aufbau dieser schleifen nur ganz grob und habe nicht die erfahrung das so genau zu formulieren wie es wahrscheinlich angemessen wäre tut mir leid.


------------------
Mutligaming Community team-pheenix.de

Inaktiv
|
Antworten: 12
Seite [1]


Sie müssen sich registrieren, um zu antworten.