Jak zmodyfikować "wyślij artykuł" aby autor nie miał wyboru sekcji i kategorii?
Strona 1 z 3 123 OstatniOstatni
Wyniki 1 do 10 z 28

Temat: Jak zmodyfikować "wyślij artykuł" aby autor nie miał wyboru sekcji i kategorii?

  1. #1
    Bywalec
    Dołączył
    16-03-2007
    Skąd
    Żyrardów
    Wpisy
    115
    Punkty
    10

    Jak zmodyfikować "wyślij artykuł" aby autor nie miał wyboru sekcji i kategorii?

    Witam wszystkich.

    Korzystam z joomla 1.5.15

    Szukałem długo prostego komponentu typu: dodaj artykuł lub pytanie na stronę przez zarejestrowanego użytkownika i nic prostego - w polskiej wersji nie znalazłem.

    Wiadomo, że standardowo zarej. użytk. nie może dodawać artykułów, a opcję tą ma autor. Więc, u mnie wszyscy którzy będą się rejestrować otrzymają statut autora.

    W związku z tym postanowiłem zmodyfikować lekko edytor, który pojawia się dla autora.

    Nie chciałbym aby autor miał możliwość wybieranie sekcji i kategorii oraz miał zablokowaną możliwość dodawania obrazków (link do obrazków mogę usunąć i z tym nie mam problemu) . To chciałbym ustawić na stałą sekcję kategorię, gdzie przyporządkowałbym ID sekcji i ID kategorii na stałe.

    Dotarłem do pliku form.php w katalogu com_content\views\article\tmpl\ , gdzie w tabeli (załącznik numer 2) są skrypty odpowiedzialne za wywołanie listy sekcji i kategorii (załącznik nr1). Tylko jak wklepać na sztywno ID konkretnej sekcji i kat. i aby się owa lista nie pokazywała ?

    Mogę usunąć wiersze z tabeli z wyborem sekcji i kategorii, ale wtedy artykuł nie zapisze się bo nie wybrano sekcji.

    Z tym mam problem duży. Nie jestem specjalistą od php, więc może ktoś przyjazny by mi pomógł ?

    Pozdrawiam.
    Attached Images Attached Images
    ciesz się rzeczami małymi, bo z czasem staną się dużymi

  2. Pani Reklamowa
    Pani Reklamowa jest aktywna
    Avatar Panny Google

    Dołączył
    19-08-2010
    Skąd
    Internet
    Postów
    milion
    Pochwał
    setki
  3. #2
    Wyga Jola awatar
    Dołączył
    08-01-2008
    Skąd
    Wrocław
    Wpisy
    3 239
    Punkty
    386

    Domyślny

    Witam,
    za wyświetlanie selecta sekcji i kategorii w pliku form.php odpowiadają pozycje:
    Kod PHP:
    echo $this->lists['sectionid'];
    .....
    echo 
    $this->lists['catid']; 
    Najprościej zamiast listy wstawić pole ukryte z wpisanymi na "sztywno" wartościami sekcji i kategorii.
    Warto dodać warunek powodujący takie uktycie tylko dla wybranej grupy. W kodzie gid to id z tabeli jos_core_acl_aro_groups (autor=19).
    Zamiast:
    Kod PHP:
    <?php echo $this->lists['sectionid']; ?>
    Wstaw (value="1" gdzie 1 to id sekcji)
    Kod PHP:
    <?php
    $user 
    = &JFactory::getUser();
    if (
    $user->get('gid') ==19){
    ?>
    <input type="hidden" name="sectionid" value="1">
    <?php
    }
    else{
    echo 
    $this->lists['sectionid'];
    }
    ?>
    Zamiast
    Kod PHP:
    <?php echo $this->lists['catid']; ?>
    wstaw (wybrane catid=1)
    Kod PHP:
    <?php
    if ($user->get('gid') ==19){
    ?>
    <input type="hidden" name="catid" value="1">
    <?php
    }
    else{
    echo 
    $this->lists['catid'];
    }
    ?>

  4. #3
    Senior PeFik awatar
    Dołączył
    18-02-2007
    Skąd
    Miasto Stu Mostów
    Wpisy
    5 465
    Punkty
    241

    Domyślny

    Szukałem długo .... - w polskiej wersji nie znalazłem.
    Bo źle szukałeś, hihi. Modyfikacja kodu jest "słabym" rozwiązaniem i przy kolejnej aktualizacji na 50% o niej zapomnisz.

    Zatem, Rzuć okiem na wpis: http://blog.elimu.pl/?p=1687
    Współautor bloga o systemie Joomla! -> blog.elimu.pl < oraz kilku książek i artykułów o tym CMS.

  5. #4
    Wyga Jola awatar
    Dołączył
    08-01-2008
    Skąd
    Wrocław
    Wpisy
    3 239
    Punkty
    386

    Domyślny

    Cytat Wysłane przez PeFik Zobacz wiadomość
    Modyfikacja kodu jest "słabym" rozwiązaniem i przy kolejnej aktualizacji na 50% o niej zapomnisz.
    Dlatego wymyślono metodę nadpisywania szablonów.

  6. #5
    Senior zwiastun awatar
    Dołączył
    20-09-2005
    Wpisy
    27 315
    Punkty
    1142

    Domyślny

    Gwoli dojaśnienia:
    Rozwiązanie podane przez @jolaass jest kompletne i w pełni bezpieczne! W katalogu swojego szablonu tworzymy podkatalog /html/com_content/article/ i kopiujemy do niego oryginalny plik form.php z katalogu /components/com_content/views/article/tmpl/.
    W tym skopiowanym pliku dokonujemy zmian opisanych przez @jolaass, dzięki czemu w wyniku aktualizacji Joomla! nasze zmiany nie zostaną zniszczone.

    PS Będę wielce zobowiązany za uczestnictwo w forum podyktowane głównie chęcią pomocy użytkownikom Joomla!, a nie autopromocji!
    Korzystaj i ciesz się!
    ===============
    Zwiastun
    Biblioteka Elektronicznej Dokumentacji Joomla!

  7. #6
    Senior PeFik awatar
    Dołączył
    18-02-2007
    Skąd
    Miasto Stu Mostów
    Wpisy
    5 465
    Punkty
    241

    Domyślny

    rozumiem, że ów PS było do mnie. Aczkowiek jak można zauważyć podałem linka do wskazówki, nie było zatem sensu kopiować treści.
    Współautor bloga o systemie Joomla! -> blog.elimu.pl < oraz kilku książek i artykułów o tym CMS.

  8. #7
    Bywalec
    Dołączył
    16-03-2007
    Skąd
    Żyrardów
    Wpisy
    115
    Punkty
    10
    Witam.

    - jolaass

    Dzięki za pomoc i konkretne przykłady. Już zabieram się do pracy/zmian.

    - PeFik

    Dzięki, Twoją propozycję komponentu JE Story Submit również rozważę - przetestuję, i myślę po przeczytaniu wzmianki, że to coś co mogę potrzebować. Aczkolwiek, jestem za lekkimi zmianami istniejących komponentów/modułów do granic ich funkcjonalności.
    Dzięki raz jeszcze.
    Ostanio edytowane przez jokrasa : 17-12-2009 20:32
    ciesz się rzeczami małymi, bo z czasem staną się dużymi

  9. #8
    Debiutant
    Dołączył
    08-07-2009
    Wpisy
    10
    Punkty
    10

    Domyślny Do jolaass

    Jolaass - świetna robota, mam do Ciebie jedna prośbę. Potrzebuje wg. Twjego przykładu zrobić jeszcze jeden trik. Każdy artykuł jest automatycznie opublikowany (w ukrytej sekcji), żeby userzy go widzieli a admin będzie tylko przenosił do odpowiedniego działu. Czyli każdy kto napisze ma automatycznie (z ukrycia) opublikowany artykuł i nie ma możliwości ustawienia strony głównej. Z góry dzięki

  10. #9
    Wyga Jola awatar
    Dołączył
    08-01-2008
    Skąd
    Wrocław
    Wpisy
    3 239
    Punkty
    386

    Domyślny

    To może krótko: za wybór opublikowane czy nie odpowiada wpis:
    Kod PHP:
    <?php echo $this->lists['state']; ?>
    zastępujemy (opublikuj: value=1; nie publikuj value=0):
    Kod PHP:
    <input type="hidden" name="state" value="1"
    za stronę frontową:
    Kod PHP:
    <?php echo $this->lists['frontpage']; ?>
    zastępujemy (na frontowej: value=1; nie na frontowej value=0):
    Kod PHP:
    <input type="hidden" name="frontpage" value="0"
    Przypominam o oczywistej oczywistości - zastosować metodę nadpisywania szablonów

  11. #10
    Debiutant
    Dołączył
    08-07-2009
    Wpisy
    10
    Punkty
    10

    Domyślny

    No właśnie tak zrobilem, nadpisałem szablon, użyłem dokładnie tego, o czym piszesz i do bazy trafiają z zerem (niepublikowane) i nie wiem dlaczego.

    A dokładniej wpisałem:
    <?php
    if ($user->get('gid') ==19){
    ?>
    <input type="hidden" name="state" value="1">
    <?php
    }
    else{
    echo $this->lists['state'];
    }
    ?>
    tym wpisem zastapiłem

    <?php echo $this->lists['state']; ?>
    Chyba wiem, dlaczego tak się dzieje, poprostu autor (grupa) nie może i tyle Ustawiłem wszystko tak samo tylko zmieniłem 19 na 21 (autor na publisher) a swojemu userwoi nadałem grupę 21-publisher i zadziałało. Inputa typu radio nie było a pomimo tego automatycznie opublikowało.

    PS. Jak dodać możliwość wysyłania artykułów grupie 18-registered?
    Ostanio edytowane przez MotyF : 03-01-2010 17:27

Strona 1 z 3 123 OstatniOstatni

Reguły pisania

  • Nie możesz zakładać nowych tematów
  • Nie możesz dodawać wypowiedzi
  • Nie możesz dodawać załączników
  • Nie możesz poprawiać swoich postów
  •