- Iszonyatos mennyiségű hulladékkal járhat a Windows 10 terméktámogatásának vége
- Egyesítené a ChromeOS-t és az Androidot a Google
- Új szintre emelte a fényűzés fogalmát az ASUS
- Kivenné a részét az új HBM memóriák tokozásából az LG
- Az ASUS legfrissebb analóg billentyűzete az ízületeinket is kímélni szeretné
- NVIDIA GeForce RTX 5070 / 5070 Ti (GB205 / 203)
- Milyen billentyűzetet vegyek?
- Milyen házat vegyek?
- iPad topik
- Iszonyatos mennyiségű hulladékkal járhat a Windows 10 terméktámogatásának vége
- Fujifilm X
- AMD Ryzen 9 / 7 / 5 9***(X) "Zen 5" (AM5)
- Melyik tápegységet vegyem?
- HiFi műszaki szemmel - sztereó hangrendszerek
- Egyesítené a ChromeOS-t és az Androidot a Google
Új hozzászólás Aktív témák
-
Sk8erPeter
nagyúr
válasz
spammer #9370 üzenetére
Feltételezem, a WordPress is támogat komolyabb szintű cache-elést, így szerintem érdemes lenne mégis megfontolnod az arra vagy más CMS-re való átállást, ha valami könnyen módosíthatót szeretnél - lehet, hogy később bővíteni szeretnéd tartalmakkal az oldaladat.
Persze ez csak lehetséges alternatíva, ha időt szeretnél magadnak megspórolni.Ha nem akarsz ilyet, és az egyszerű megoldások között keresel, létezik nagyon favágó módszer, ami nagyon nem a webfejlesztés gyöngye, de végül is működik, vegyük úgy, hogy mondjuk 10 darab cikked van, és ahogy említetted, ez 10 külön HTML-fájlba van szétdobva, és csakis ezeket szeretnéd megjeleníteni:
- mindegyik fájlnak legyen azonos a kiterjesztése (pl. .php, ha akarsz mondjuk belerakni valami PHP-kódot, legyen alkalmas rá), és lehetőleg a követhetőség miatt legyenek azonos könyvtárban
- van egy index.php fájlod, ahol az összes lényeges műveletet elvégzed; az ömlesztett kiíratást, valamint az egy darab megadott cikknek a kiíratását is
- berakod egy tömbbe ennek a 10 db fájlnak a nevét mondjuk kiterjesztés nélkül, figyelsz rá, hogy helyes nevet adj meg, és lehetőleg egyáltalán ne tartalmazzon ékezetes vagy más speciális karaktereket;
- egy foreach-csel végigmész ezen a tömbön, és szépen file_get_contents-szel beolvastatod és kiíratod ezeknek a fájloknak a tartalmát
- mindeközben figyelsz arra is, hogy a fájlokban a cikk címe és egy önhivatkozás is legyen benne - a hivatkozás meg mondjuk legyen ilyesmi: index.php?article=tokmindegy, ahol tokmindegy a fájl neve kiterjesztés nélkül, kiterjesztéssel meg tokmindegy.php
- ha valaki úgy nyitja meg az oldalt, hogy http://example.com/index.php VAGY http://example.com/index.php VAGY http://example.com/index.php?article=, akkor ömlesztve jeleníted meg az összes cikket
- ha valaki úgy nyitja meg az oldalt, hogy http://example.com/index.php?article=tokmindegy, akkor megvizsgálod, hogy létezik-e a tokmindegy.php az adott könyvtárban, ha igen, akkor kiíratod, és kész vagy; ha nem létezik, akkor pl. kiraksz egy hibaüzenetet, hogy nincs ilyen fájl, és megjeleníted ömlesztve a tartalmat. Ha valaki ilyen módon nyitja meg az oldalt, akkor a $_GET['article'] értéke egyenlő lesz tokmindegy sztringgel.Vegyük azt, hogy az "itt_tarolod_a_cikkeket" könyvtárban vannak a tartalmaid, ez pedig az index.php-vel azonos könyvtárban helyezkedik el.
Valahogy így néz ki akkor a könyvtárstruktúra (most azért tettem DIR-t az itt_tarolod_a_cikkeket mögé, hogy jelezzem, hogy az egy könyvtár):fejlec.php
lablec.php
index.php
itt_tarolod_a_cikkeket [DIR]
|-- tokmindegy.php
|-- masikcikk.php
|-- megegycikk.php
|-- ....Ez alapján NAGYON leegyszerűsített tákolmány fos példa, gyorsan összekotorva:
Pl.:
<?php
// .....................
$articles_directory = 'itt_tarolod_a_cikkeket';
$articles_array = array( 'tokmindegy', 'masikcikk', 'megegycikk', );
$page_to_show = '';
$errors_array = array();
if( !empty($_GET['article']) ){
if( in_array($_GET['article'], $articles_array) ){
if( file_exists($_GET['article']) ){
$page_to_show = $articles_directory.'/'.$_GET['article'].'.php';
}
else{
$errors_array[] = "File doesn't exist or is not available!";
}
}
else{
$errors_array[] = 'The following article is invalid: "'.$_GET['article'].'"';
}
}
?>
<html>
<head>
<title>Teszt</title>
.......
<style type="text/css">
.red {
color:red;
}
</style>
<head>
<body>
<div id="page">
<div>
<?php
require_once('fejlec.php');
?>
</div>
<div id="content">
<?php
if(!empty($errors_array)){
echo '<div class="red">', implode('<br />', $errors_array), '</div>';
}
if(empty($page_to_show)){
foreach($articles_array as $article){
$article_path = $articles_directory.'/'.$article.'.php';
if( file_exists($article_path) ){
echo file_get_contents($article_path);
}
else{
echo '<div class="red">"'.$article.'" doesn\'t exist!</div>';
}
}
}
else{
$article_path = $articles_directory.'/'.$page_to_show.'.php';
echo file_get_contents($article_path);
}
?>
</div>
<div>
<?php
require_once('lablec.php');
?>
</div>
</div>
</body>
</html>Mivel őszintén szólva még egy szövegszerkesztőbe sem dobáltam bele, csak itt a PH!-s textarea-ba pötyögtem be, ezért ne tépjétek le a tökömet, ha szintaktikai hibát tartalmaz, innen úgy tűnt, hogy nincs benne.
Meg hát ezzel nem akartam senkinek programozási tanácsot adni, sőt, mert ez nem egy szép módszer.
Csak a gyorscélnak megfelel, legalábbis ez a fenti ilyen ötperces módszer.
Új hozzászólás Aktív témák
- NVIDIA GeForce RTX 5070 / 5070 Ti (GB205 / 203)
- ASZTALI GÉP / ALKATRÉSZ beárazás
- Mibe tegyem a megtakarításaimat?
- Kerékpárosok, bringások ide!
- Rajzol, fest, photoshopozik valaki?
- Milyen billentyűzetet vegyek?
- Tőzsde és gazdaság
- Milyen házat vegyek?
- iPad topik
- Iszonyatos mennyiségű hulladékkal járhat a Windows 10 terméktámogatásának vége
- További aktív témák...
- Csere-Beszámítás! Számítógép PC Játékra! Intel I7 6700/ RX 580 8GB / 32GB DDR4 / 500GB SSD
- HP Envy x360 14-fc0789nz - ÚJ - 14" 2-in-1 notebook - Core U7, 32GB, 2.8k OLED
- Asztali PC , i5 10500 , RTX 3070 , 32GB RAM , 512GB NVME , 1TB HDD
- Lenovo Gaming 3 15ARH7 Laptop , R5 7535HS , RTX 3050 6GB
- Eladó Dell Latitude 3410 i3 10. generáció, 8GB RAM, 256GB SSD
- ÁRGARANCIA!Épített KomPhone Ryzen 7 5700X 16/32/64GB RAM RTX 3060 12GB GAMER PC termékbeszámítással
- AKCIÓ! Apple MacBook PRO 15" 2018 i9 32GB 500GB 560X 4GB notebook garanciával hibátlan működéssel
- LG 65BX - 65" OLED - 4K 120Hz 1ms - NVIDIA G-Sync - FreeSync Premium - HDMI 2.1 - PS5 és Xbox Ready!
- Cisco Catalyst C1000-48T-4G-L 48xRJ45 4xSFP switch, CISCO refurbished
- Telefon felvásárlás!! iPhone 11/iPhone 11 Pro/iPhone 11 Pro Max
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: Promenade Publishing House Kft.
Város: Budapest