Skocz do zawartości


Zdjęcie

forum IPB obrazki w załącznikach widoczne dla niezalogowanych


  • Zaloguj się, aby dodać odpowiedź
Brak odpowiedzi do tego tematu

#1 makensis

makensis

    Naczelny

  • 5 036 postów

Napisano 08 01 2013 - 17:57

Przedstawiam sposób, aby obrazki będące załącznikami były widoczne nie tylko dla zarejestrowanych i zalogowanych użytkowników forum IPB, ale także dla gości i botów jak Google.

Dołączona grafika

W forach IPB 3.3 i 3.4 jest to możliwe(sprawdzone) poprzez edycję pliku class_attach.php, gdzie znajdują się funkcje odpowiedzialne za wyświetlanie załączników na forum. Oczywiście możemy zmodyfikować tak, aby dowolne pliki były widoczne czy pobieralne dla wszystkich wchodzących na forum, jednak w tym artykule skupię się tylko na wyświetlaniu miniatur. Do dzieła:
  • Otwieramy plik: class_attach.php w lokalizacji: /admin/applications/core/sources/classes/attach
  • W funkcji renderAttachments() w linii 733 kończącej pętle if ( $this->settings['show_img_upload'] and $row['attach_is_image'] ) po poleceniu:
    else {

    dodaj:
    if ( $this->settings['show_img_upload'] == 0 and $row['attach_is_image'] ) {
    //Makensis dla Tweaks.pl v.1.0 attachments visible for unregistered users and unlogged forums IPB
    if ( $this->attach_settings['siu_thumb'] AND $row['attach_thumb_location'] AND $row['attach_thumb_width'] )
    {
    //-----------------------------------------
    // Make sure we've not seen this ID
    //-----------------------------------------
    
    $row['_attach_id'] = $row['attach_id'] . '-' . str_replace( array( '.', ' ' ), "-", microtime() );
    
    $tmp = $this->registry->getClass('output')->getTemplate( $skin_name )->Show_attachments_img_thumb( array( 't_location' => $row['attach_thumb_location'],
    't_width'	 => $row['attach_thumb_width'],
    't_height' => $row['attach_thumb_height'],
    		 'o_width'	 => $row['attach_img_width'],
    'o_height' => $row['attach_img_height'],
    	 'attach_id' => $row['attach_id'],
    '_attach_id' => $row['_attach_id'],
    'location' => $row['attach_file']." Zarejestruj się lub zaloguj, aby zobaczyć zdjęcie w pełnym rozmiarze!",
    'type'	 => $this->type,
    'a_location' => $row['attach_location'],
    'attach_rel_id' => $row['attach_rel_id'] ) );
    
    //-----------------------------------------
    // Convert HTML
    //-----------------------------------------
    
    $tmp = str_replace("lightbox", "", $tmp);
    $final_blocks[ $row['attach_rel_id'] ]['thumb'][] = $tmp;
    }
    
    }
    else {
    
  • Teraz w linii 807 zamykamy przedłużoną przez nas funkcję, czyli dodajemy: }
  • Zapisujemy wszystkie zmiany w pliku


  • 0

Zobacz więcej tematów z tagiem: IPB IP.Board



Użytkownicy przeglądający ten temat: 1

0 użytkowników, 1 gości, 0 anonimowych