To jest tylko wersja do druku, aby zobaczyć pełną wersję tematu, kliknij TUTAJ
phpBB2 by Przemo
Support forów phpBB2 modified by Przemo

1.12.7 i starsze - Tag System Mod - Tagi tematów (chmura tagów)

Centurion - 15-12-2008, 01:41
Temat postu: Tag System Mod - Tagi tematów (chmura tagów)
Kod:
##########################################################################################
## MOD Title: Tag System Mod
## MOD Author: Centurion ( http://centurion.sadistic.pl )
##                                           
## MOD Description: This mod allows you to tag topics on your forum for better indexing in
##            google search engine. It cooperates with Spider Friendly mod!
##                   
## MOD Version: 1.01                                 
##                                           
## Installation Level: Intermediate                           
## Installation Time: 20 minutes
##                                           
## Included files: 7
##          - tags.php
##          - includes/functions_tags.php
##          - language/lang_polish/lang_tags.php
##          - language/lang_english/lang_tags.php
##          - templates/xxx/tags_body.tpl
##          - templates/xxx/admin/admin_tags_body.tpl
##          - templates/xxx/portal_modules/tags_menu.tpl
##
## Files to Edit: 16                                 
##            - common.php                           
##            - index.php                           
##            - portal.php                           
##            - posting.php                           
##            - viewtopic.php                           
##            - admin/modules_data.php                           
##            - includes/constants.php                           
##            - includes/functions_post.php                           
##            - includes/functions_remove.php                           
##            - languages/lang_polish/lang_admin.php                           
##            - languages/lang_polish/lang_main.php                           
##            - languages/lang_english/lang_admin.php                           
##            - languages/lang_english/lang_main.php                           
##            - templates/xxx/index_body.tpl                   
##            - templates/xxx/posting_body.tpl                   
##            - templates/xxx/viewtopic_body.tpl                   
##                                           
##########################################################################################


Modyfikacja pozwala na dodawanie tagów do tematów na forum i wyświetlanie ich w postaci 'chmury' w dowolnym miejscu forum (domyślnie na indexie oraz jako moduł portalu, ale mozna to wstawić gdziekolwiek).

Kilka uwag:
1. Zarządzanie w PA :
- domyślna ilość tagów w chmurze (można ustawić dla każdej podstony inną ręcznie)
- domyślny sposób wyświetlania: losowo lub najczęściej używane (można ustawić dla każdej podstony inny ręcznie)
- kto może ustawiać/edytować tagi: autor, mod, jr admin, admin
- minimalna i maksymalna długość tagu
- ilość tematów na stronie z wynikami przeszukiwania po tagu
2. Mod w pełni współpracuje ze Spider Friendly i przepisuje adresy do postaci tag/{tag}
3. Na stronie wynikowej (przeszukiwanie po tagu) pokażą się wpisy ze wszystkich tematów, więć nie ma sensu używać tego moda na zamkniętych forach. Zresztą to jest stworzone czysto pod SEO.

Automatyczne tagowanie.

Demo: http://www.sadistic.pl - portal, index, niektóre tematy (te które już zdążyłem otagować :P )

Warunki użytkowania i otrzymania pomocy:
Jako że pisałem tego moda ładnych kilka godzin i udostepniam go za darmo proszę o zachowanie mojej stopki która pokazuje się w wyszukiwarce tagów.

Update do wersji 1.01

They2 - 15-12-2008, 07:06

nareszcie, w koncu przerobiles, dzieki za wstawke moda
wydaje mi sie ze wziales do roboty w moim temacie http://www.przemo.org/php...pic.php?t=62003 MOD Advanced Topic Tags 1.9.1 ?


Czegos brakuje do moda:
- brak automatycznej koloryzacji, gdyby byla opcja do wyboru koloru lub bez w PA
- brak wielkosci tagow (chodzi o najpopularniejsze slowa -powiekszajacy rozmiar) w indexie i w portalu
- nie te miejsce Topic Tag w poscie, najlepiej nad pierwszym postem

no i jeszcze, szkoda ze musimy wstawic recznie tagi w poscie, a ich jest okolo 4 tys tematow :( czy jest taka mozliwosc aby tagi w poscie byly automatyczne wyswietlane zamiast recznie wstawic ? bo az tylu tematow to ochoty nie mam.

Czy moglbys przerobic jeszcze kilka to co pisalem wyzej ?

Radek - 15-12-2008, 12:25

Już byś się mógł postarać i wrzucić kod html do tags_body.tpl, żeby to jakoś wyglądało ;)

[ Dodano: 15-12-2008, 12:34 ]
functions_tags.php
Kod:
while(strpos($topic_tags, ' ,'))
$topic_tags = str_replace(' ,', ',', $topic_tags);
while(strpos($topic_tags, ', '))
$topic_tags = str_replace(', ', ',', $topic_tags);

po co te petle tutaj?

Kod:
$topic_tags = str_replace('"', '', $topic_tags);
$topic_tags = str_replace("'", '', $topic_tags);
$topic_tags = str_replace("&", '', $topic_tags);
$topic_tags = str_replace(";", '', $topic_tags);

nie lepiej:
Kod:

$topic_tags = str_replace(array('"', '&', ';'), '', $topic_tags);
? :mrgreen:

Kod:
for($tt = 0; $tt < count($tagi); $tt++)

lepiej tak:
Kod:
for($tt = 0, $tc = count($tagi); $tt < $tc; $tt++)

trzy razy to występuje

To tak na szybko, więcej uwag nie mam ;P No, prócz tego htmla w php.

Centurion - 15-12-2008, 12:39

Cytat:
nareszcie, w koncu przerobiles, dzieki za wstawke moda
wydaje mi sie ze wziales do roboty w moim temacie http://www.przemo.org/php...pic.php?t=62003 MOD Advanced Topic Tags 1.9.1 ?


nie, nie korzystałem z żadnego innego moda

They2 napisał/a:
- brak automatycznej koloryzacji, gdyby byla opcja do wyboru koloru lub bez w PA
- brak wielkosci tagow (chodzi o najpopularniejsze slowa -powiekszajacy rozmiar) w indexie i w portalu

wiekosc sie nieznacznie zmienia przy przewadze wystepowania jednego taga nad innymi, kolorow nie ruszalem bo nawet nie wiem jak miloby to wygladac

Cytat:
- nie te miejsce Topic Tag w poscie, najlepiej nad pierwszym postem

mozesz pokombinowac sam, to sie da zrobic

They2 napisał/a:
no i jeszcze, szkoda ze musimy wstawic recznie tagi w poscie, a ich jest okolo 4 tys tematow :( czy jest taka mozliwosc aby tagi w poscie byly automatyczne wyswietlane zamiast recznie wstawic ? bo az tylu tematow to ochoty nie mam.

nie da rady, trzeba recznie

RuseK napisał/a:
Już byś się mógł postarać i wrzucić kod html do tags_body.tpl, żeby to jakoś wyglądało ;)

tak miało to być, żeby mi stopki nie usuwać ;]

MagicalFire - 15-12-2008, 17:30

zainstalowałem tego moda jednak na stronie głównej forum wyskakuje
Kod:
Could not obtain user vote data for this topic

DEBUG MODE

SQL Error : 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1

SELECT * FROM phpbb_tags ORDER BY tag_occur DESC LIMIT

Line : 172
File : functions_tags.php

Jeśli nie potrafisz znaleźć rozwiązania tego problemu,
możesz spróbować poszukać, lub zadać pytanie na forum: http://www.przemo.org/phpBB2/


poza tym
nie ma takiego pliku
admin/modules_portal.php

[ Dodano: 15-12-2008, 17:37 ]
juz sobie poradziłem

[ Dodano: 15-12-2008, 20:21 ]
problem z innej beczki
pisze nowy temat i wywala mi
Kod:
Musisz wpisać wiadomość przed wysłaniem

mimo ze treść jest wpisana

xlesiu - 15-12-2008, 23:21

Chyba jest mały błąd w instrukcji. Albo nawet nie błąd a "literówka"
Kod:
#
#---[ OPEN ]---
#
language/lang_polish/lang_admin.php
#
#---[ FIND ]---
#
?>
#
#---[ BEFORE ADD ]---
#
$lang['Tags'] = 'Tagi';
#
#---[ OPEN ]---
#
language/lang_polish/lang_main.php
#
#---[ FIND ]---
#
?>
#
#---[ BEFORE ADD ]---
#
$lang['Tags'] = 'Tagi';
$lang['Tags_explain'] = 'Tagi tematu rozdzielone przecinkami';
#
#---[ OPEN ]---
#
language/lang_english/lang_admin.php
#
#---[ FIND ]---
#
?>
#
#---[ BEFORE ADD ]---
#
$lang['Tags'] = 'Tags';
#
#---[ OPEN ]---
#
language/lang_polish/lang_main.php
#
#---[ FIND ]---
#
?>
#
#---[ BEFORE ADD ]---
#
$lang['Tags'] = 'Tags';
$lang['Tags_explain'] = 'Topic tags separated by comma';
#

Czy w tym ostatnim nie powinno być
Kod:
#---[ OPEN ]---
#
language/lang_english/lang_main.php

They2 - 16-12-2008, 09:21

xlesiu, rzeczywiscie jest pomylka.
powinno byc
Kod:
#---[ OPEN ]---
#
language/lang_english/lang_main.php


MagicalFire napisał/a:
problem z innej beczki
pisze nowy temat i wywala mi
Kod:
Musisz wpisać wiadomość przed wysłaniem   

mimo ze treść jest wpisana
u mnie jest dobrze, wpisuje tagi lub bez i wiadomosc zostal wyslany.

gdzies musiales zrobic zle, sprawdz jeszcze raz w/g instrukcji.


Centurion napisał/a:
mozesz pokombinowac sam, to sie da zrobic
tym przeniesc kodu nie da, sprobowalem inna modyfikacje "Podobne tematy" jak tu i nie dalo
np. znajdz w viewtopic_body.tpl
Kod:
{postrow.MESSAGE}
przed tym
Kod:
<!-- BEGIN topic_tag -->
<span class="nav">{topic_tag.TOPIC_TAGS}</span>
<!-- END topic_tag -->
i nie ma, chyba ze trzeba przerobic to w viewtopic.php

np o widze tagi (przez litera t: ) na stronie http://www.motogen.pl/art...znan,art25.html

Centurion napisał/a:
nie, nie korzystałem z żadnego innego moda
ani troszkę ?
treker - 16-12-2008, 19:50

Chyba mam jeszcze jeden błąd, w konfiguracji portalu moduł z tagami, nie ma nazwy :/
Mam puste pole, gdy je wybiorę to wszystko działa tzn. na portalu jest ten moduł.

I jeszcze jeden poważny błąd. Gdy otagujemy jakiś post w dziale tylko dla modów czy adm, to każdy widzi wycinek tego posta po kliknięciu w dany tag.

A teraz takie pytanie co do samej filozofii tagowania, lepiej tagować słowami, które się narzucają po przeczytaniu postu, czy z góry ustalić sobie np grupę 20 tag'ów które są używane?

MagicalFire - 16-12-2008, 20:21

treker napisał/a:
I jeszcze jeden poważny błąd. Gdy otagujemy jakiś post w dziale tylko dla modów czy adm, to każdy widzi wycinek tego posta po kliknięciu w dany tag.

to tez zauważyłem Centurion,
da rade to wyeliminować ??
treker napisał/a:
lepiej tagować słowami, które się narzucają po przeczytaniu postu

tak
treker napisał/a:
czy z góry ustalić sobie np grupę 20 tag'ów które są używane?

no to jaki sens by miało te tagowanie ??

treker - 16-12-2008, 20:25

Nie wiem czy to błąd czy nie, ale przy większej ilości tagów mam coś takiego:
Kod:
Topic tag system error

DEBUG MODE

SQL Error : 1271 Illegal mix of collations for operation ' IN '


SELECT * FROM phpbb_tags WHERE tag_name IN ('robot', 'robotyka', 'platforma', 'podwozie', 'tamiya', 'sumo', 'minisumo', 'koło', 'koła', 'napęd', 'silnik', 'silniki')


Line : 74
File : functions_tags.php


i kolejne błędy:

Kod:

Topic tag system error

DEBUG MODE

SQL Error : 1267 Illegal mix of collations (latin1_swedish_ci,IMPLICIT) and (latin2_general_ci,COERCIBLE) for operation '='

SELECT * FROM phpbb_tags WHERE tag_name IN ('stopień mocy')

Line : 74
File : functions_tags.php


[ Dodano: 16-12-2008, 20:51 ]
Z tego co zauważyłem oba błędy pojawiają się gdy w tagach są polskie znaki.

[ Dodano: 16-12-2008, 21:04 ]
Dobra ja sobie poradziłem, zmieniłem kodowanie znaków tabel do tag'ów

Centurion - 16-12-2008, 21:05

MagicalFire napisał/a:
I jeszcze jeden poważny błąd. Gdy otagujemy jakiś post w dziale tylko dla modów czy adm, to każdy widzi wycinek tego posta po kliknięciu w dany tag.


Cytat:
3. Na stronie wynikowej (przeszukiwanie po tagu) pokażą się wpisy ze wszystkich tematów, więć nie ma sensu używać tego moda na zamkniętych forach. Zresztą to jest stworzone czysto pod SEO.


To nie sprawdza dostępu użytkownika do działu i nie będzie sprawdzać bo nie do tego służy.

treker, masz coś narypane z kodowaniem bazy danych

co do drobnych błędów w instrukcji ktore znalezliscie to staram sie od czasu do czasu poprawiac

MagicalFire - 16-12-2008, 23:13

Cytat:
#---[ OPEN ]---
#
includes/constants.php
#
#---[ FIND ]---
#
?>
#
#---[ AFTER ADD ]---
#
define('TAGS_TABLE', $table_prefix . 'tags');
define('TAG_MATCH_TABLE', $table_prefix . 'tag_match');

o ile mi wiadomo AFTER to jest po a powinno to być dodane przed
Kod:
?>

They2 - 17-12-2008, 08:58

MagicalFire napisał/a:
o ile mi wiadomo AFTER to jest po a powinno to być dodane przed
a tak zgadza sie, znow widze pomylke heh

Centurion, masz jakies rozwiazanie jak przeniesc kod w viewtopic , ktora pisalem wyzej ?

Centurion - 17-12-2008, 13:05

They2,

w viewtopic.php
Kod:
#--- [ZNAJDŹ] ---
'U_POST_ID' => $postrow_post_id)
);

#--- [ PO TYM DODAJ ]---
if($i == 0 && $topic_tags)
{
$template->assign_block_vars('postrow.tag', array('TOPIC_TAGS' => $topic_tags));
}

#--- [ USUŃ ]---
if($topic_tags)
{
$template->assign_block_vars('topic_tag', array(
'TOPIC_TAGS' => $topic_tags
}


w templates/*/viewtopic_body.tpl
Kod:
#--- [ZNAJDŹ] ---
<!-- END postrow -->

#--- [ PRZED TYM DODAJ ]---
<!-- BEGIN tag -->
<tr>
<td class="row3" colspan="2" height="1"><span class="gensmall">{tag.TOPIC_TAGS}</span></td>
</tr>
<tr>
<td class="spaceRow" colspan="2" height="1"><img src="{SPACER}" alt="" width="1" height="1" /></td>
</tr>
<!-- END tag -->

#--- [ USUŃ ]---
<!-- BEGIN topic_tag -->
<tr><td align="left" colspan="2" class="row3"><span class="nav">{topic_tag.TOPIC_TAGS}</span></td></tr>
<!-- END topic_tag -->


jak chcesz żeby tagi pokzywały się tylko pod pirwszym postem w temacie na pierwszej stronie tematu to zmieniasz
Kod:
if($i == 0 && $topic_tags)
na
Kod:
if($topic_first_post_id == $postrow[$i]['post_id'] && $topic_tags)
w viewtopic.php

deLLek - 17-12-2008, 14:50

Kod:
Fatal error: Call to undefined function tag_cloud() in /home/dellek/public_html/index.php on line 694


W linii 694 mam
Kod:
'TAG_CLOUD' => tag_cloud(),


Co mogłem zrobić źle jeżeli mi wyświetla ten błąd ?



Powered by phpBB modified by Przemo © 2003 phpBB Group