В голове добавь это:
<script type="text/javascript">
function resizePhotosets(desiredSize)
{
var setFrames = document.getElementsByClassName("photoset");
if (setFrames != null)
{
for(var i = 0; i < setFrames.length; i++)
{
var foundWindow = false;
var frameWindow = null;
while(!foundWindow)
{
frameWindow = setFrames[i].contentWindow;
if (frameWindow != null)
foundWindow = true;
}
var foundDoc = false;
var frameDoc = null;
while(!foundDoc)
{
frameDoc = frameWindow.document;
if (frameDoc != null)
foundDoc = true;
}
if (foundDoc)
{
var photoRows = frameDoc.body.getElementsByClassName("photoset_row");
for (var j = 0; j < photoRows.length; j++)
{
photoRows[j].removeAttribute("style");
photoRows[j].style.display = "inline";
var photos = photoRows[j].getElementsByTagName("img");
for(var k = 0; k < photos.length; k++)
{
photos[k].style.width = desiredSize.substring(0, desiredSize.lastIndexOf('sq')) + 'px';
var source = photos[k].src;
var pos1 = source.lastIndexOf('_');
var pos2 = source.lastIndexOf('.');
photos[k].src = source.substring(0, pos1 + 1) + desiredSize + source.substring(pos2);
}
}
}
}
}
return false;
}
</script>
А затем назовите его из вашего body
тега так: <body onload="resizePhotosets('75sq')">
Сценарий выполняет следующее ...
- Когда документ загружен, проверьте, есть ли на странице рамки для фотосета. Если на странице есть рамки для фотосетов, продолжайте. В противном случае ничего не делать.
- Для каждого кадра фотосета дождитесь загрузки окна кадра и документа кадра.
- Как только документ кадра будет загружен, возьмите все строки фотосета.
- Для каждой строки фотосета очистите стили и установите дисплей на линию.
- Затем возьмите все фотографии с фотосета.
- Для каждой фотографии установите для источника изображения нужный параметр размера.
Очевидно, что вы можете делать все, что захотите, поскольку стилирование выполняется в шагах 4 и 6, но это был простой способ отрисовки всех фотосет-фотографий с разрешением 75px и размещения их в виде непрерывной линии. Если у вас есть вопросы, не стесняйтесь спросить. Я проверил его в своей песочнице Tumblr, и он работает.
ETA: Я не знал, что {PhotoURL-250}
работает внутри блока фотосет, но это работает. В этом случае вот более простой код:
{block:Photos}
<img src="{PhotoURL-250}" class="photoset-image" />
{/block:Photos}
<script type="text/javascript">
var photos = document.getElementsByClassName("photoset-image");
for(var i = 0; i < photos.length; i++)
{
photos[i].style.width = '75px';
var source = photos[i].src;
var pos1 = source.lastIndexOf('_');
var pos2 = source.lastIndexOf('.');
photos[i].src = source.substring(0, pos1 + 1) + '75sq' + source.substring(pos2);
}
</script>
Все, что нужно сделать, это взять предоставленный URL и заменить его на квадрат 75px.