Kiinteä hakutoiminto bbPress foorumille
-
Foorumiosastolla on visuaalisessa mielessä lähes identtisen näköinen hakutoiminto tavallisten sivujen kanssa.
Se ei kuitenkaan ole toiminnallisesti yhtä hyvä kuin muilla sivuilla. Voisin yrittää luoda Code Snippet avulla vastaavankaltaisen PHP:n ja sijoittaa sen sisällön alkuun ja siitä position:fixed avulla paikoilleen.
Onkohan kellään käsitystä, missä on esim.
https://www.sanaristikkofoorumi.net/wordpress/tietoja/ sivulla näkyvän haun PHP-koodi? Olisiko se teeman function.php:ssä jollakin nimellä?- Tätä aihetta muokkasi 5 vuotta, 11 kuukautta sitten tapiohuuhaa.
The page I need help with: [log in to see the link]
-
WordPressin haku on aika syvällä rakenteissa, se on osa WP_Queryä. Tahtoo siis sanoa, että ei ole ihan yksinkertainen juttu.
Jos haluat oikein hyvän haun, asennat vaikkapa Relevanssin. Se tosin vaatii vähän lisäkoodia toimiakseen hyvin bbPressin kanssa, mutta kun sen virittelet, haku on sen jälkeen toiminnallisesti yhtä hyvä joka paikassa.
Twentyfourteen haku perussivuilta on visuaalisesti ja toiminnallisesti hyvä. Koska se istuu nätisti leiskaan, en halua uutta lisäosaa sen takia, koska sitten pitäisi leiska miettiä uusiksi.
Visuaalisesti saman näköisestä bbPress-hausta puuttuu seuraavat ominaisuudet tai se eroaa siitä seuraavilla tavoin:- haku ei ponnauta kännykässä automaattisesti näppäimistöä esille
- puuttuu tyhjennystoiminto
- etu tai haitta mutta kännykällä perussivujen haku pompauttaa sivun alkuun, mutta bbPress sivustolla ei (laitoin molempiin haun siten, että se on aina käytettävissä)
bbPressin haku ei tietokoneella merkittävällä tavalla eroa perussivujen hausta – vain kohta 2 puuttuu. Tavallinen käyttäjä tuskin edes eroa huomaa.
Mutta kännykällä ero on suurempi, sillä em. kolme kohtaa on siinä eri lailla.
Olen testannut 320×480 kännykällä, joten sivut oikeasti toimivat kännykälläkin (ilman muutoksia bbPress ei olisi toiminut kunnolla 320x480px kännykällä).
Tiedä sitten kuinka moni ylipäätänsä käyttää tätä sivustoakaan kännykällä. Tämäkin toimii kännykällä, joskin 320×480 näytölle olisi hieman optimoitavaa.Ideana oli seuraava:
- yrittäisin luoda melkein samalanlaisen funktion kuin mitä teema luo perussivujen haulle, mutta muutamat attribuutit olisivat eri.
- Laittaisin Code Snippet avulla funktiokutsun sivun yläosaan
- siirtäisin CSS:llä haun sivun oikeaan reunaan
Lähtökohta on se, että saisi PHP:n osalta hoidettua yhdellä funtiolla, jota käyttää joko Code Snippet tai aliteeman functions.php kautta. Henk. koht. Code Snippet on paljon joustavampi tapa lisätä koodia kuin tehdä aliteema. Jos ei saa yhdellä funtiolla, antaa olla.
- Tätä vastausta muokkasi 5 vuotta, 11 kuukautta sitten tapiohuuhaa.
- Tätä vastausta muokkasi 5 vuotta, 11 kuukautta sitten tapiohuuhaa.
Hakulomakkeen HTML-koodi on yleensä searchform.php:ssa teemassa. Jos ei ole siellä, niin sitten käyttää WP:n oletuslomaketta.
Vähän erilaisethan nuo lomakkeet ovat, voi olla että melko pienellä vaivalla ne olisi yhdenmukaistettavissa, jos vain keksii, mistä erot johtuvat.
twentyfourteen ihan oma systeemi. koodattu header.php:ssa
näyttämiseen/piilottamiseen liittyy oma koodi
itse lomake on vakiolomake
get_search_form();
Taitaa olla liian monimutkaista. Erot kohta kohdalta:
1) haku ei ponnauta kännykässä automaattisesti näppäimistöä esille
Tämä on koodattu teeman toimintaan.
href=”#search-container” class=”screen-reader-text” aria-expanded=”false” aria-controls=”search-container”
kutsuu attribuuteilla aria-kontrollia – en tunne.
aria-expanded=”false” aria-controls=”search-container” – mitenkähän näitä hallitaan ja miten niistä tekisi bbPress-alueen version?
Koodissa _e( ’Search’, ’twentyfourteen’ ); on vain kielijuttu ja painike tulee kaiketi CSS:llä, koska HTML-koodissa on vain ’Etsi’. Merkityksetön detalji, sillä painikkeen voi laittaa joko kuvana tai CSS:llä.
2) puuttuu tyhjennystoiminto
Tämä on koodattu hakufunktioon eli get_search_form();
Jos saman haluaisi bbPressiin, bbPressin haku pitäisi koodata uusiksi. Pitäisi ehdottaa bbPressin tekijöille, että lisäisivät tyhjennysfunktion.
3) etu tai haitta mutta kännykällä perussivujen haku pompauttaa sivun alkuun, mutta bbPress sivustolla ei
Tämä johtuu vain siitä, että asiaa ei ole hoidettu Js:llä vaan href=”#search-container” , joka pompauttaa alkuun. Jos laitan return true, pompauttaisi alkuun kaiketi JS:nkin kanssa.
Taitaa olla liian monimutkaista.
- Tätä vastausta muokkasi 5 vuotta, 11 kuukautta sitten tapiohuuhaa.
- Tätä vastausta muokkasi 5 vuotta, 11 kuukautta sitten tapiohuuhaa.
Kokelin
a href=”#” class=”search-toggle” … /a
Tuo yksinään avaa haun. En ymmärrä ollenkaan. En ole tottunut siihen, että luokka-attribuutti toteuttaa toiminnon.- Tätä vastausta muokkasi 5 vuotta, 11 kuukautta sitten tapiohuuhaa.
Javascriptihommia nuo ariat ja classit. Luokkia käytetään paljon javascriptin puolella hallitsemaan juttuja, luokkia kun on helppo lisäillä ja poistaa lennossa.
Minulla on melko alkeelliset tiedot JavaScriptistä. Töissä ollessani koodasin lähinnä PHP:llä ja JavaSriptiä koodasin niin vähän kuin mahdollista. Minulle oli uutta, että luokkia käytetään JavaScriptin puolella.
Ylös pompahtamisen kännykällä hoidin kahdella eri versiolla painikkeita. Kännykälle on return true ja isoille näytöille return false.
Kännykkällä merkittävin ero on se, että virtuaalinäppis ei ponnahda heti esille. Sen saaminen toimintaan pitäisi kaiketi koodata JavaScriptillä vastaava toiminto.
Hakulomakkeen voisi generoida kaiketi kiinteäksi, jollainen se nytkin on foorumiosiolle.
Mutta edelleen tyhjennys taitaa liittyä ydinkoodiin. Tyhjennyspainike nimittäin on ihan tavallisessa perussivujen ja artikkelien hakutoiminnossa toisin kuin bbPressin hakulomakkeessa. Tyhjennyksen kaiketi voisi lisätä, jos generoisi hakulomakkeen JavaScritpillä, mutta taitaa olla meikäläiselle ylivoimaista.
Osaisiko joku sanoa, mistä löytää Javascriptin, joka
1) ponnauttaa näppiksen esille automaattisesti
2) luo lomakkeen tyhjennysenVoisin yrittää laittaa nuo lisätoiminnot luomaani funktioon, joka nyt vain avaa ja piilottaa haun.
Yritin tämän perusteella:
https://stackoverflow.com/questions/6020400/showing-androids-soft-keyboard-when-a-field-is-focusd-using-javascriptvar target = document.getElementById(”bbp_search-bbpress”);
if (event.target != target) {
target.focus();
target.click();
}ei vaikutusta. Tarkoitus olisi, että tietokoneella kursori kohdistuisi autom. haun alkuun ja kosketusnäytöllä siis myös näppis autom. esille.
- Tätä vastausta muokkasi 5 vuotta, 11 kuukautta sitten tapiohuuhaa.
Tyhjennys näemmä toimii Chromella laittamalla hakulomakkeen tyypiksi ”search”. Myös vanhemmissa selaimissa toimivuutta en onnistunut toteuttamaan, mutta se ei ole merkityksellistä. Toi automaattinen näppisen ponnauttaminen/kursorin kohdistaminen olisi kiva saada toimimaan.
Yhtenä pikku ongelmana tässä on hakulomakkeen suurennuslasi.
Twentyfourteen ei käytä dashicons-settiä vaan jotain muuta.
Minulla oli taustakuva, mutta ajattelin, että pistän kaikki mahdolliset vain dashicons-kuvakkeina.
https://www.sanaristikkofoorumi.net/wordpress/forums/https://www.sanaristikkofoorumi.net/wordpress/ristisanatehtavat/
yritin yliajaa search-toggle alkuperäistä kuvaa CSS:llä, mutta ei onnistunut.
Miksi tämä yliajo ei onnistu:
div.header-main .search-toggle,div.header-main .search-toggle:hover {font-size:0!important;width:48px !important;height:48px!important;content:” !important;}
div.header-main .search-toggle a.screen-reader-text {display:block !important;font-size:0 !important;color:transparent;background-image:none!important}
div.header-main .search-toggle a.screen-reader-text::before{
position:absolute;
top:0;
right:0;
content: ”\f179”;
display:block;
color:#fff;
padding:14px;
font: 100 20px/1 dashicons;
background-color: #044774;
}
div.header-main .search-toggle a.screen-reader-text:hover::before {
padding:12px !important;
font: 100 24px/1 dashicons !important;
}Tuo ratkaistu laittamalla .search-toggle::after ja tuo sitten lykätään painikkeen päälle
myös omaan painikkeeseen piti muuttaa ::after mukaan.Minulla usein puolet vierailijoista käyttää kännykkää. Todo-listalla on edelleen näppäimistön automaattiponnahduksen puute hakutoiminnassa. Olisi kiva saada se vielä kuntoon.
Koodiss oli virhe
var x = document.getElementById(”search-form-bbpress”);
if (x.style.display === ”none”) {x.style.display = ”block”;//$(this).focus(); – virhe – focus väärälle elementille!
} else {x.style.display = ”none”;}
document.getElementById(”bbp_search-bbpress”).focus();//tämä laittaa fokuksen kohdalleen}Vihdoin molemmat haut toimivat samaan tapaan.
- Tätä vastausta muokkasi 5 vuotta, 10 kuukautta sitten tapiohuuhaa.
- The topic ‘Kiinteä hakutoiminto bbPress foorumille’ is closed to new replies.