phpBB Türkiye - phpBB3 Türkçe destek ve geliştirme

İçeriği atla

profesyonel phpBB3 hizmetleri

Sitemiz sadece phpBB 3.0 sürümüne destek vermektedir. Konu açmadan, ileti yazmadan önce lütfen site kuralları sayfamıza göz atınız.

Uye olmayan linkleri goremesin

Forum kuralları
Lütfen bu bölüm ve alt bölümlerde yardım isterken "yardım isteme şablonu" nu kullanınız.

Uye olmayan linkleri goremesin

İleti saka 10 Ağu 2007 17:44

phpBB3 sürümü:phpbb3
Panonun tam adresi:xx
Dil paketini indirdiğiniz adres:phpbbturkiye
Soru/hata tanımlamaları:
Uye olmayan yada uye girisi olmayan kisilermesajlarda verilen linkleri de goremesinler.
Bunu nasil ayarlayabiliriz acaba
En son saka tarafından, 29 May 2008 21:53 tarihinde değiştirildi, toplamda 1 değişiklik yapıldı.
saka


İleti: 162
Kayıt: 29 Tem 2007 16:36
HTML: Orta
CSS: Başlangıç
PHP: Başlangıç
phpBB3: Başlangıç
Sürüm: phpbb3

  profesyonel phpBB3 çözümleri ve web hizmetleri

Re: Uye olmayan linkleri goremesin

İleti afterso 10 Ağu 2007 20:36

Grup izinlerinden ayarlayabilirsin. Ordan misafir grubunu seçiyorsun daha sonra forumlar geliyor altlarında gelişmiş izinler yazıyor. Gelişmiş izinlerden eklenti veya linkleri bu grup görmesin şeklinde bir seçenek var.
afterso


İleti: 23
Kayıt: 20 Tem 2007 22:43
HTML: Orta
CSS: Başlangıç
PHP: Orta
phpBB3: Başlangıç
Sürüm: phpBB3.RC5

Re: Uye olmayan linkleri goremesin

İleti siyabend 10 Ağu 2007 20:53

phpbb3'e henüz böyle bir eklenti yok..Bildiğim kadarıyla üzerinde çalışıyorlar
siyabend
genel yetkili
genel yetkili

Kullanıcı avatarı

İleti: 182
Kayıt: 18 May 2007 18:22
HTML: Başlangıç
CSS: Başlangıç
PHP: Başlangıç
phpBB3: İyi
Sürüm: phpBB 3.0.2

Re: Uye olmayan linkleri goremesin

İleti ALEXIS 10 Ağu 2007 21:30

basit olarak is_register is_bot olaylarını kullanabilirsin URL bbcodelerin parse edildiği dosyada... URL parse edilen dosya için linkleri ayrı sayfada açma konusuna bakabilirsin...

Temel kodlama mantığı:

Kod: Tümünü seç
if ($user->data['is_registered'])
{
   // kayıtlı kullanıcılara gösterilecek kodlar
}
else
{
   echo 'linkleri görebilmeniz için üye olmalısınız';
}
ALEXIS
tercüme
tercüme

Kullanıcı avatarı

İleti: 2580
Kayıt: 03 Arl 2006 09:57
Konum: İstanbul
İsim: Sevdin Filiz
HTML: İyi
CSS: İyi
PHP: Orta
phpBB3: İyi
Sürüm: phpBB 3.0.2

Re: Uye olmayan linkleri goremesin

İleti saka 11 Ağu 2007 00:33

Merhaba,
Probb isimli temayı kullanıyorum. bbcode.html isimli dosyayı aşağıdaki gibi yaptım. ancak çalışmıyor. link görünüyor hatta aynı sayfada açılıyor.
Kod: Tümünü seç
<? if ($user->data['is_registered'])
{
  <!-- BEGIN url --><a href="{URL}" target="_blank" class="postlink">{DESCRIPTION}</a><!-- END url -->
}
else
{
   echo 'linkleri görebilmeniz için üye olmalısınız';
}
?>
saka


İleti: 162
Kayıt: 29 Tem 2007 16:36
HTML: Orta
CSS: Başlangıç
PHP: Başlangıç
phpBB3: Başlangıç
Sürüm: phpbb3

Re: Uye olmayan linkleri goremesin

İleti ALEXIS 11 Ağu 2007 02:03

çalışmaması doğal, tema dosyasında saf php kullanmak pek onaylanan birşey değil ve varsayılan olarak kapalıdır. tema php dili ile yazabilirsin:

Kod: Tümünü seç
<!-- IF S_USER_LOGGED_IN -->
// giriş yapmış
<!-- ELSE -->
// gişriş yapmamış
<!-- ENDIF -->


Ancak URL bbcode ifadesi sadece bbcode.html den ibaret değil. Lİnkleri ayrı sayfada açmak konusunda benim uzun bir yazım olacak onda tam yerler yazılı...

Yazımı göremezsin alıntı yaptım:

ALEXIS yazdı:Konu hakkında:

eklenti geliştirme forumuna taşındı, bir konudan bu konuya linmk vardı artık çalışmaz.


Eklenti hakkında:

Şimdi 3 tür link verilebiliyor, 2 si bbcode.html kodlarını kullanan URL etiketi ile verilen linkler, diğeri ise "magic url" dediğimiz olay.


bbcode.html yi görmezden gelmişsiniz.

Şu şekildeki kullanımlar bbcode.html den alıyor html kodları,

Kod: Tümünü seç
[url=http://www.canver.net]url-test[/url]
[url]http://www.canver.net[/url]


Bu ise magic url denen olaya tabi tutuluyor.

Kod: Tümünü seç
http://www.canver.net




İlk iletideki eklenti işe yaramıyor magic url için, ancak bbcode.html için aşağıdaki kod işe yarıyor:

Kod: Tümünü seç
<!-- BEGIN url --><a href="{URL}" class="postlink" target="_blank">{DESCRIPTION}</a><!-- END url -->


$class köısmına eklemek yerine, benim ilk yaptığım daha iyi bir yer, ancak eklediğim kodlar görünmüyor kaynak kodunda (eski linklerde görünmüyor, yenilerde ise görünüyor):

Kod: Tümünü seç
$html   = "$whitespace<!-- $tag --><a$class href=\"$url\" target=\"_blank\">$text</a><!-- $tag -->$append";



Eski iletilerdeki magic url türü linklere neden etki etmediğine gelince, ileti html olarak saklanıyor veritabanında, örneğin test veritabanımdaki url nin bulunduğu post_text alanı:

Kod: Tümünü seç
<!-- m --><a class="postlink" href="http://www.canver.net">http://www.canver.net</a><!-- m -->


Bunu gidermek içinde SQL REPLACE yapacağız.

Kod: Tümünü seç
UPDATE phpbb_posts SET post_text = REPLACE(post_text, '<a class=', '<a target="_blank" class=');


buraya kadar tamam, ancak RC2 de sadece magic url içeren bir konudan sonraki iletiler görünmüyor, nedeni ise kapatılmamış tırnak, yukarıdaki gibi bir uygulama sonucu aşağıdaki iletiyi yazmış oluyoruz:

Kod: Tümünü seç
http://www.canver.net" href="_blank


Bunun sebebi de çift tırnak bir yede tacize uğruyor, tek tırnak kullandığımızda istediğimiz sonucu alıyoruz oysa:

Kod: Tümünü seç
$html   = "$whitespace<!-- $tag --><a$class href=\"$url\" target='_blank'>$text</a><!-- $tag -->$append";


Tırnağı taciz eden yeri bulamadım...
ALEXIS
tercüme
tercüme

Kullanıcı avatarı

İleti: 2580
Kayıt: 03 Arl 2006 09:57
Konum: İstanbul
İsim: Sevdin Filiz
HTML: İyi
CSS: İyi
PHP: Orta
phpBB3: İyi
Sürüm: phpBB 3.0.2

Re: Uye olmayan linkleri goremesin

İleti saka 11 Ağu 2007 10:45

Merhaba,
Linkler yeni sayfada açılıyor ancak üye olmayan linkleri göremesin işini beceremedim.
Kodun son hali aşağıdadır.

Kod: Tümünü seç
<!-- IF S_USER_LOGGED_IN -->
<!-- BEGIN url --><a href="{URL}" class="postlink" target="_blank">{DESCRIPTION}</a><!-- END url -->
<!-- ELSE -->
Linkleri görebilmek için üye olmanız gerekir.
<!-- ENDIF -->
saka


İleti: 162
Kayıt: 29 Tem 2007 16:36
HTML: Orta
CSS: Başlangıç
PHP: Başlangıç
phpBB3: Başlangıç
Sürüm: phpbb3

Re: Uye olmayan linkleri goremesin

İleti ALEXIS 11 Ağu 2007 11:36

bbcode.html sadece bazı lişnkleri kapsıyor, bir de includes/functions.php dosyasında URL bbcode kodları var, şu fonksiyon içinde:

Kod: Tümünü seç
function make_clickable_callback($type, $whitespace, $url, $relative_url, $class)
{


Zaten yukarıdaki alıntımda geçen php kodları bu dosyada.
ALEXIS
tercüme
tercüme

Kullanıcı avatarı

İleti: 2580
Kayıt: 03 Arl 2006 09:57
Konum: İstanbul
İsim: Sevdin Filiz
HTML: İyi
CSS: İyi
PHP: Orta
phpBB3: İyi
Sürüm: phpBB 3.0.2

Re: Uye olmayan linkleri goremesin

İleti saka 11 Ağu 2007 17:27

Şimdiye kadar yazdıkların için teşekkür ederim. Ancak olmuyor yapamıyorum.
Nereden başlayacağımı, nereye ne yazacağımı bulamıyorum. bir saattir denemeler yapıyorum ancak hiç sonuç alamadım.
saka


İleti: 162
Kayıt: 29 Tem 2007 16:36
HTML: Orta
CSS: Başlangıç
PHP: Başlangıç
phpBB3: Başlangıç
Sürüm: phpbb3

Re: Uye olmayan linkleri goremesin

İleti saka 20 Ağu 2007 09:50

Bu konuda yardimci olabilecek birisi var midir acaba.
Tesekkurler.
saka


İleti: 162
Kayıt: 29 Tem 2007 16:36
HTML: Orta
CSS: Başlangıç
PHP: Başlangıç
phpBB3: Başlangıç
Sürüm: phpbb3

Sonraki

phpBB3 Sorunlar & Yardım


Kimler çevrimiçi

Bu forumu görüntüleyenler: Kayıtlı kullanıcı yok ve 1 misafir